Layoutprobleme? - Styleswitcher!
![]() |
| | Themen-Optionen |
| | Nach oben #1 |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| Ich habe mich (mal wieder) an das BBCode-Parser-Tutorial gemacht. Derzeit hänge ich folgendem Problem: Mein BBCode sieht so aus: Code: [url="http://www.domain.tld" title="Dies ist der Titel des Links"]Link-Text[/url] Code: <a href="Dies ist der Titel des Links">Link-Text</a> Code: <a href="http://www.domain.tld" title="Dies ist der Titel des Links">Link-Text</a> Mein url-case sieht so aus: PHP-Code: Bei den kommentierten Zeilen habe ich mal testweise $arrayParameter ausgegeben; mit dem Ergebnis, dass $arrayParameter['title'] nicht existiert, daher der title-tag auch nicht auftauchen kann. Das leuchtet mir zwar ein, dass das die Folge ist; warum der title-Text verschweindet weiß ich aber nicht. Was aber daran auch merkwürdig ist, dass der Text, der für den Titel vorgesehen war dann in den href rutscht. Hat jmd. eine Idee? Ist da ggf. ein Fehler im Tutorial oder habe ich mir das hier einfach nur mal wieder kaputt konfiguriert? die beiden url-Varianten Code: [url]http://www.developers-guide.net/[/url] [url]http://www.developers-guide.net/]developers-guide[/url]
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! Geändert von Jann Hendrik (26.02.2008 um 10:21 Uhr). Grund: noparse-tags hinzugefügt |
| | |
| | Nach oben #2 |
| Der Student Registriert seit: 03.01.2007 Ort: München
Beiträge: 49
| Vielleicht weil du keine Anführungszeichen um die URL setzten darfst? [ url="url" titel="blub"]bla[/url] Im Tutorial werden die beim ersten Parameter bzw. __INIT__ nicht verwendet!
__________________ Wenn ich du wäre, wäre ich lieber ich. http://www.clubstars.net http://www.x-tinct.de |
| | |
| | Nach oben #3 | |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| Zitat:
Wenn ich das ohne den title-tag nutze, sind die " egal. Funktioniert mit und ohne Was meinst du damit? Das verstehe ich gerade nicht, was du mir damit sagen willst.
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! | |
| | |
| | Nach oben #4 |
| Johannes Müller Registriert seit: 15.09.2005 Ort: Königreich Flieden
Beiträge: 488
| lass dir doch mal $arrayMatches und $arrayParameter in der Funktion functionParseParameter ausgeben, wenn der titel-Parameter nicht vorhanden ist, scheint ja da schon irgendwo der Fehler zu liegen... btw in der zweiten url-Variante hat sich ein tippo eingeschlichen (] statt =)
__________________ Weißt Bescheid - Scheiß wie weit |
| | |
| | Nach oben #5 |
| Lutz Registriert seit: 14.08.2005 Ort: Nienburg / Weser
Beiträge: 603
| Ähm, ich verstehe das selber gerade nicht, denn wenn ich mir den Anhang des Tutorials runterlade und ausprobiere, funktioniert es ohne Probleme, zumal es sogar eines der Beispiele ist, die in der Test-Datei enthalten sind... Hast du das Script kopiert oder hast du es Stück für Stück aus dem Tutorial erweitert? Dann müsste ich nämlich mal prüfen, ob ich im Tutorial selber etwas anderes stehen habe, als in den Scripten des Anhangs!?
__________________ Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll |
| | |
| | Nach oben #6 | ||||
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| Zitat:
Code: Array
(
[__INIT__] => http://www.domain.tld
[0] => http://www.domain.tld
)
Array
(
[0] => Array
(
[0] => ="http://www.domain.tld"
[1] =>
[2] => "
[3] => http://www.domain.tld
)
[1] => Array
(
[0] => title="Dies ist der Titel des Links"
[1] => title
[2] => "
[3] => Dies ist der Titel des Links
)
)
Array
(
[__INIT__] => Dies ist der Titel des Links
[0] => Dies ist der Titel des Links
[1] => Dies ist der Titel des Links
)
Array
(
[0] => Array
(
[0] => ="http://www.domain.tld"
[1] =>
[2] => "
[3] => http://www.domain.tld
)
[1] => Array
(
[0] => title="Dies ist der Titel des Links"
[1] => title
[2] => "
[3] => Dies ist der Titel des Links
)
)
Array
(
[__INIT__] => http://www.domain.tld
[0] => http://www.domain.tld
)
Array
(
[0] => Array
(
[0] => ="http://www.domain.tld"
[1] =>
[2] => "
[3] => http://www.domain.tld
)
[1] => Array
(
[0] => title="Dies ist der Titel des Links"
[1] => title
[2] => "
[3] => Dies ist der Titel des Links
)
)
Array
(
[__INIT__] => Dies ist der Titel des Links
[0] => Dies ist der Titel des Links
[1] => Dies ist der Titel des Links
)
Array
(
[0] => Array
(
[0] => ="http://www.domain.tld"
[1] =>
[2] => "
[3] => http://www.domain.tld
)
[1] => Array
(
[0] => title="Dies ist der Titel des Links"
[1] => title
[2] => "
[3] => Dies ist der Titel des Links
)
) Code: [url="http://www.domain.tld" title="Dies ist der Titel des Links"]Link-Text[/url] Zitat:
Zitat:
Zitat:
Das ist aber schon ein paar 'Tage' länger her. In dem Rahmen entstand auch die Test-Datei für das Tutorial. Ich habe mal, damit ihr einen Einblick bekommt, eine Übersicht meines Codes zusammengestellt: Funktionstest: und der Quellcode der kleinen Klasse (mit den beiden Methoden aus dem Tutorial)
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! | ||||
| | |
| | Nach oben #7 |
| Lutz Registriert seit: 14.08.2005 Ort: Nienburg / Weser
Beiträge: 603
| Verstehe ich jetzt gerade nicht, die Test-Datei ist doch ebenso wie das Script selbst von mir angehängt worden!? Hä? Bin ich schon zu begriffsstutzig gegen halb acht Uhr Abends?!
__________________ Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll |
| | |
| | Nach oben #8 |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| Ggf. solltest du deinen Alkoholkonsum nochmal überdenken Ja, die Testdatei hast du angehängt - aber im Rahmen der Testphase des Tutorials von mir (zumindest in Teilen) erstellt worden....
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! |
| | |
| | Nach oben #9 |
| Lutz Registriert seit: 14.08.2005 Ort: Nienburg / Weser
Beiträge: 603
| Hab den Fehler gefunden: PHP-Code: EDIT: Habe im Tutorial und auch im Anhang diesen Tippfehler nicht drin, mag höchstens sein, dass das noch aus einer vorherigen Version stammt und ich es danach im Tutorial schon korrigiert hatte?! Btw: Mein Alkoholkonsum kann eigentlich garnicht weiter eingeschränkt werden, sonst fängt nachher noch an sich Blut im Alkohol zu bilde, das geht doch wohl garnicht?!
__________________ Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll Geändert von MrNiceGuy (26.02.2008 um 20:35 Uhr). |
| | |
| | Nach oben #10 |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| wunderbar - das war's! Im Tutorial ist es richtig. Den Fehler habe ich wohl bei mir reingebaut! Danke!
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! |
| | |
| | Nach oben #11 |
| Der Student Registriert seit: 03.01.2007 Ort: München
Beiträge: 49
| Hrhr nicht nur die Anfänger machen solche Fehler
__________________ Wenn ich du wäre, wäre ich lieber ich. http://www.clubstars.net http://www.x-tinct.de |
| | |
| | Nach oben #12 |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
|
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! |
| | |
| | Nach oben #13 |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| So... nachdem der url-tag ja nun richtig funktioniert habe ich mal versucht ein paar weitere tags einzubauen. Der folgende funktioniert zwar zufriedenstellend, aber ich werde das Gefühl nicht los, dass man das auch schöner hätte lösen können.... PHP-Code:
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! |
| | |
| | Nach oben #14 |
| Lutz Registriert seit: 14.08.2005 Ort: Nienburg / Weser
Beiträge: 603
| Wie wäre es denn einfach mit einem einzelnen RegEx? PHP-Code: Allerdings verstehe ich auch gerade deinen str_replace nicht so ganz, warum ersetzt du alle <li></li> durch Nichts!? Vermutest du, dass jemand einen leeren Eintrag einbaut? Und wenn ja: Wäre es so schlimm? Vielleicht ist es ja gewollt - aus welchen Gründen auch immer!?
__________________ Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll |
| | |
| | Nach oben #15 | |
| Johannes Müller Registriert seit: 15.09.2005 Ort: Königreich Flieden
Beiträge: 488
| Zitat:
autsch... Also noch sinnfreier können Reguläre Ausdrücke ja fast nicht mehr angewandt werden... sry, aber ist so wie wäre es denn in diesem Fall einfach mit nem schlanken in_array? PHP-Code: Alternativ wäre auch ein z.B. ein solcher switch um einiges schneller als ein regex: PHP-Code: Und du solltest überprüfen, ob $arrayParameter['__INIT__'] eine zahl ist um kein fehlerhaftes HTML zu erzeugen.
__________________ Weißt Bescheid - Scheiß wie weit | |
| | |
| | Nach oben #16 | ||||
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| Probiere ich morgen mal aus! Zitat:
Am Anfang und am Ende habe ich noch die beiden li-tags. Diesen Umweg habe ich gewählt, damit das schließende li-tag auf jeden Fall immer dabei ist. Dadurch aber ist am Anfang immer ein li-start und li-end-tag, welches leer ist, welches ich im zweiten Schritt entferne. Klingt unübersichtlich? Ist es auch. Es tut genau das, was es soll, aber es stellt mich halt nicht zufrieden! Es geht hier ja nicht um die Funktionalität, sondern um sauberen Code, denn so richtig glücklich bin ich halt damit nicht... Zitat:
Aber mal im ernst - die haben schon ihre Begründung, dass sie groß, bzw. klein sind! Hier ist ein vereinheitlichen also ein ändern an der Ausgabe! A sorgt für eine Aufzählung mit A, B, C, ... während hingegen die Angabe a für a, b, c, ... sorgt. somit wäre beides möglich. Mit einem strtolower nicht mehr! Zitat:
Zitat:
Allgemein muss ich die übergebenen Werte noch nach Validität prüfen und absichern. Nachtrag zum strtolower: könnte man so machen, richtig. Ich habe übersehen, dass im erzeugenden Code selbst ja wieder mit dem Original arbeitest...
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! Geändert von Jann Hendrik (27.02.2008 um 23:10 Uhr). | ||||
| | |





