Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

<base> funktioniert nur selektiv

Diskussion: <base> funktioniert nur selektiv im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hey HaBo. Und mal wieder hab ich ein Problem^^ (bin ich froh das ich euch hab xD) Und dieses ...

Antwort
Alt 02.12.10, 19:24   #1 (permalink)
 
Benutzerbild von ChiefWiggum
 
Registriert seit: 09.10.07
ChiefWiggum Leistung: 8086
ChiefWiggum eine Nachricht über ICQ schicken
Likes: 11
Standard <base> funktioniert nur selektiv

Anzeige

Hey HaBo.

Und mal wieder hab ich ein Problem^^ (bin ich froh das ich euch hab xD)
Und dieses mal funktioniert mein <base>-Tag nur bei ausgewählten Dateien.
Als Hintergrundinfo:
Ich hab ein Projekt in einem Verzeichnis a là
http://server/work/bla/asdF/projekt/

Dort ist nun eine .htaccess wodurch alle 'subdirs' die Aufgerufen werden auf die index weitergeleitet werden und diese dann je nachdem entsprechende Dinge ausführt.

Wenn ich nun [...]/index/ aufrufe, funktioniert alles ordnungsgemäß.
Zum Sprachwechsel hab ich ein Script, welches per AJAX den Server auf den Sprachwechsel aufmerksam macht, der dann eine Session-Variable setzt und bei erfolg wird die Seite neu geladen.
Dieses ruft [...]/ajax/language/blablabla auf => Funktioniert.

Wenn ich jedoch [...]/register/ aufrufe, funktionieren die Javascripts nimmer
Das Sprachscript ruft [...]/register/ajax/language/blablabla auf.
Ich kann mir aber absolut nicht erklären wie dies kommt.
Die HTML-Codes der beiden ausgegebenen Seiten sind großteils gleich. Den Base-Tag hab ich mehrmals kontrolliert => Ist in beiden Fällen gleich...

Woran kann das liegen?

Falls es hilft, .htaccess & co:

...   
Code:
RewriteEngine on
Options Indexes FollowSymLinks Includes -MultiViews
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([a-z]+)\/?$ index.php?page=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([a-z]+)\/([a-zA-Z0-9]+)$ index.php?page=$1&action=$2 [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^([a-z]+)\/([a-zA-Z0-9]+)\/(.*)$ index.php?page=$1&action=$2&data=$3 [L]
@main-dir:
favicon.ico | inc/ | index.php | notizen.txt | template/


Danke! (:


EDIT:
Was mir gerade noch auffällt:
$ cat register.htm | grep Startseite
<a href="/a/b/index/">Startseite</a><a href="/a/b/register/">Registrieren</a>
$ cat index.html | grep Startseite
<a href="http://localhost/a/b/index/">Startseite</a><a href="http://localhost/a/b/register/">Registrieren</a>

D.h. einmal nimmt Firefox es als http://-Link und einmal als Relativen... Aber wieso? o.O Ich hab eigentlich nichts derartiges im Code stehen...
__________________
Be the source always with you.

Geändert von ChiefWiggum (02.12.10 um 19:41 Uhr)
ChiefWiggum ist offline   Mit Zitat antworten
Alt 02.12.10, 20:01   #2 (permalink)
Member of Honour
 
Benutzerbild von beavisbee
 
Registriert seit: 22.02.07
beavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium III
beavisbee eine Nachricht über ICQ schicken
Likes: 77
Standard

Ich vermute mal, du rufst irgendwo ajax/language statt /ajax/language auf.
Abgesehen davon: wenn ich dynamische Seiten habe, generiere ich mir meine Pfade lieber serverseitig... <base> ist irgendwie so ein Tag, den ich seit Jahren in keinem Code mehr gesehen habe ;-)
beavisbee ist gerade online   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 02.12.10, 20:43   #3 (permalink)
Themenstarter
 
Benutzerbild von ChiefWiggum
 
Registriert seit: 09.10.07
ChiefWiggum Leistung: 8086
ChiefWiggum eine Nachricht über ICQ schicken
Likes: 11
Standard

Der Ajax-Kram wird von der gleichen Datei aus geladen.
Mit der dynamischen Pfaderstellung hab ich wohl das Problem, dass ja auch die inkludierten Dateien (template / Javascript) dementsprechend ersetzt werden müssten.
Demnach wäre der Base-Tag schon ziemlich angebracht :/

EDIT:

Ich habs!
Es liegt an den 0xEFBBBF am anfang der Dokumente.
Wenn es vorhanden ist => FAIL.

Warum ist das so? Hat jemand eine logische Erklärung dazu? Und wird dadurch das Charset meiner Dateien "verfälscht"? Hab vor das gesammte Projekt in UTF-8 zu speichern.
__________________
Be the source always with you.

Geändert von ChiefWiggum (02.12.10 um 20:57 Uhr)
ChiefWiggum ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » JavaScript <base> funktioniert nur selektiv
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61