Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

parse fehler





Frage

hi, haben ein syntax- fehler kann mir einer helfen ? im normal html lautet der befehl: <a href="javascript:void(0)" onmouseover="displayPopup('DeinPopup.html','feedback',100,400,(version4 ? event : null))" onmouseout="closePopup()">DeinLinkText</a> für php habe ich folgendes erzeugt: echo "<a href='javascript:void(0)' onmouseover='displayPopup('DeinPopup.html','feedback',100,400,(version4 ? event : null))' onmouseout='closePopup()'>DeinLinkText</a>"; echo "</td>"; kann mir einer sagen wo der fehler ist = danke

Antwort 1 von TheHappyJoker

Habe es kurz mal durch meinen Offline-Parser laufen lassen (weil ich beim kurzen überblicken nichts gefunden habe).

Der hat aber keinen PHP-Fehler gefunden!

Es liegt nur ein JavaScript-Fehler vor! Das OnMouseOut scheint so nicht zu funktionieren.

JavaScript-Fehler: Objekt erwartet.

Was willst Du erreichen? Das ein Popup-Fenster beim verlassen des Linkbereichs geschlossen wird?

<gruß thj>

Antwort 2 von quo

genau - also ohne php im normal html geht es nur halt im eingebundenen echo nicht könnte der fehler im bereich ...displayPopup('DeinPop.. liegen, da ja schon im html ein ' durch " eingeschlossen wird ?

Antwort 3 von TheHappyJoker

Achso, jetzt habe ich es gefunden :)

Im eigentlichen Sinne leigt ja auch kein Fehler vor, nur wenn man sich mal die beiden Code gemeinsam anschaut, erkannt man den Übeltäter:

Die " kannst Du im PHP maskieren (denn weglassen darfst Du sich nicht), damit sie vom PHP-Parser nicht "erkannt" werden:

echo "<a href=\"javascript:void(0)\" onmouseover=\"displayPopup('DeinPopup.html','feedback',100,400,(version4 ? event : null))\" onmouseout=\"closePopup()\">DeinLinkText</a>";
Das sollte gehen :)

P.S.: Das HTML-Handbuch (am besten als deutsches CHM-Dokument, falls Du Windows benutzt) ist für den Anfang sehr gut geeignet ;-)

<gruß thj>

Antwort 4 von TheHappyJoker

Sollte natürlich PHP-Handbuch heißen (Denk-Schreibfehler :)

<gruß thj>

Antwort 5 von MixMax

er benutzt aber ' in den " das geht normal schon.
ich würde es aber umdrehen damit er nichts innerhalb der Anführungszeichen umsetzt.

also echo 'blah <a href=""> blah </a>';

wenn du z.B. schreibst

$XYZ = "Hallo"

und dann schreibst
echo "123$XYZ";
schreibt er dir 123Hallo

hingegen bei
echo '123$XYZ';
schreibt er dir auch wirklich 123$XYZ

da brauchst du auch nur das ' selber zu maskieren.

habe wegen der überlangenzeile bei deinem eintrag die tags entfernt.

Antwort 6 von quo

hi,
das ist mir alles klar - aber ich babe das problem, das ich in der darstellung für html schon ' zur werteübergabe verwende - wie muss ich die einbeauen - da sie unter echo zu "
danke

Antwort 7 von MixMax

ggfs schaue dir mal die
funktion String = addslashes(String);

an

also mit

echo addslashes("<a href=\"jav.../a>");

oder

echo quotemeta("<a href=\"jav.../a>");

könnte es evtl besser gehen da er dann alle sonderzeichen markiert mit einem
ich glaube in deinem fall sollte quotemeta helfen.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: