Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Syntax Frage

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Jojo_44
    hat ein Thema erstellt [Erledigt] Syntax Frage.

    [Erledigt] Syntax Frage

    Hallo zusammen,

    stehe gerade vor einem Problem das mich mehr Zeit kostet als ich eigentlich dachte. Folgender Code:



    PHP-Code:
    $Parameter 'Test';
    echo 
    '    
    <a href="javascript:Server('
    .$Paramter.');">Absenden</a>
    '


    Wie ist der richtige Syntax um der funktion Server den Parameter mitzugeben ?

    mfg Jojo

  • Jojo_44
    antwortet
    Ok ich werde mir eure Anmerkungen mal zu Herzen nehmen

    Schönen Abend noch, Jojo

    Einen Kommentar schreiben:


  • ChrisB
    antwortet
    Zitat von Jojo_44 Beitrag anzeigen
    Ja genau das war ja mein Problem, das ich das nicht gewusst habe. Und das kann ich auch nicht durch anschauhen des Quelltextes rausfinden.
    Doch - dass das die Ursache des Fehlers ist, das würdest du durchaus rausfinden, wenn du dir den erzeugten JavaScript-Code mal aufmerksam anschauen würdest. Allerdings erfordert diese Erkenntnis durchaus Grundkenntnisse über JavaScript und dessen Syntax.

    Ja ich beziehe mich auf die Verbindung PHP - Javascript, das gehört weder bei PHP noch bei Javascript zu den Grundlagen. Von daher versteh ich das mit "lerne Grundlagen" immer noch nicht.
    Wenn du Grundlagenwissen in JavaScript hättest, dann wüsstest du, wie der fertige JavaScript-Code auszusehen hat - inkl. eventuell in JavaScript notwendiger Maskierungen von Sonderzeichen.

    Wenn du Grundlagenwissen in PHP hättest, dann wüsstest du, wie du dort den Code (statische Textbestandteile und dynamische Variableninhalte) notieren musst, um den nach dem ersten Schritt feststehenden JavaScript-Code zu erzeugen - inkl. eventuell in PHP notwendiger Maskierungen von Sonderzeichen.

    Und wenn du etwas gesunden Menschenverstand mitbringst, was du tun solltest, wenn du programmieren willst - dann wüsstest du auch, wie beides kombiniert wird.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Genau.

    1. Du hast nicht gewußt, dass in function(test text hier drin); Hochkommata gehören. DAS ist eine JS-Frage. Strings werden in JS-Einführungen behandelt. Syntax auch.
    2. Schlimmer noch, Du wußtest auch gar nicht, wo Du nachsehen musst, was der Unterschied zwischen Browserquelltext und PHP-Quellcode ist. DAS ist eine PHP-Grundlage. Eben dass PHP Browsercode erzeugt. Grundlagenkapitel diverser Tutorials/Bücher.
    3. Danach wußtest Du nicht, was Du jetzt ändern musst. Wenn nicht aus 2) resultierend ist das ein Problem des Verständnis von PHP-Stringverarbeitung. Wiederum Einführungskapitel: Syntax, Typen, Strings, Variablen

    Danach wärst Du vielleicht beim Versuch, irgendwo die Quotes fürs JS einzubringen, übers Escaping gestolpert.


    Niemand hat behauptet, dass es einfach sein wird. Dynamische Webprogrammierung passiert eben auf vielen Ebenen gleichzeitig.

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    SELFHTML: JavaScript / Sprachelemente / Variablen und Werte

    Hier zum Beispiel. Da steht das Zeichenketten immer in Anführungszeichen definiert werden müssen. Wenn du also in JavaScript irgendwo eine Zeichenkette nutzen möchtest sollte sie in Anführungszeichen stehen. Der Quellcode der DURCH PHP generiert wird, also der Quelltext den der Browser anzeigt (wo kein PHP mehr sichtbar ist) zeigt dir dann z.b. das du keine Anführungszeichen hattest:

    function(test text hier drin);

    Daher sieht man, hier fehlen die Anführungszeichen. Dann ist die Frage wo du sie einbauen musst. Das ist dann der PHP Part. Da hier das generierte JavaScript nur noch Text ist und keine "Programmieranweisungen" behandelst du dort alles als Strings, heißt ZU den JS Anführungszeichen kommen die von PHP dazu ...

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Sorry, wenn Du ersthaft vom Internet erwartest, auf jede Frage einen passend zugeschnittenen Artikel zu finden, habe ich schlechte Nachrichten für Dich.

    Lernen hat etwas mit der Abstraktionvon Aufgaben zu tun. Programmieren erst recht.

    Bereits das Einführungskapitel (PHP: Einfhrung - Manual) des Manuals, wie auch diverse PHP-Tutorials enthalten die o.g. Punkte. Escaping bekommt man spätestens raus, wenn man den ersten Parse error erzeugt hat.

    Einen Kommentar schreiben:


  • Jojo_44
    antwortet
    http://www.php.de/531824-post9.html

    Für mich ist das der Quelltext.

    Zeig mir doch bitte mal eine Grundlagenseite womit ich meine Frage hätte selber beantworten können.(inkl. das escapen).

    Ich hoffe man kann hier seine Meinung sagen, nicht dass das hier noch ausartet

    mfg Jojo

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Ja ich beziehe mich auf die Verbindung PHP - Javascript, das gehört weder bei PHP noch bei Javascript zu den Grundlagen. Von daher versteh ich das mit "lerne Grundlagen" immer noch nicht.
    Falsch. Was ist PHP - PHP.de Wiki

    Ja genau das war ja mein Problem, das ich das nicht gewusst habe. Und das kann ich auch nicht durch anschauhen des Quelltextes rausfinden.
    Falsch. Erstens hast Du ihn nicht angeschaut (Zitat:
    <?php
    $Parameter = 'Test';
    echo '
    <a href="javascript:Server('.$Paramter.');">Absenden</a>
    ';
    ?>

    Das ist alles
    )
    Zweitens hattest Du gar keine Quotes drinnen. Ergo auch kein Problem mit dem Escapen. Aber ich habe gewußt, dass Du Dich sofort mit diesem Punkt herausreden würdest.

    Einen Kommentar schreiben:


  • Jojo_44
    antwortet
    Zitat von nikosch Beitrag anzeigen
    Den einzigen Knackpunkt stellt das Escapen der Hochkommata dar.
    Ja genau das war ja mein Problem, das ich das nicht gewusst habe. Und das kann ich auch nicht durch anschauhen des Quelltextes rausfinden.

    Ja ich beziehe mich auf die Verbindung PHP - Javascript, das gehört weder bei PHP noch bei Javascript zu den Grundlagen. Von daher versteh ich das mit "lerne Grundlagen" immer noch nicht.

    mfg Jojo

    Einen Kommentar schreiben:


  • ChrisB
    antwortet
    Zitat von Jojo_44 Beitrag anzeigen
    Meiner Meinung nach gehört das aber nicht zu den Grundlagen, weil in meinem Javascript Buch steht das nirgends.
    Was steht da nirgends?

    Wie die Syntax innerhalb von JavaScript zu lauten hat? Dann schmeiß das Buch weg.

    Oder beziehst du dich auf die Verbindung von PHP und JavaScript, mit der wir es hier zu tun haben, wenn PHP dynamisch JavaScript-Code erzeugt?
    Informationen dazu kannst du nicht in einem reinen JavaScript-Buch erwarten. Wenn du eine weitere Technik ins Spiel bringst - dann musst du dich auch mit den Regeln und der Syntax dieser weiteren Technik auseinandersetzen.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Doch gehört es. Es basiert auf absoluten Grundlagen:

    1. PHP-Ausgaben bilden HTML-Code
    2. in PHP werden Zeichen mit echo ausgegeben.
    3. Variablen werden mit $ eingeleitet
    4. Strings und Variablen kann man mit . verbinden

    Tiefer in den Grundlagen kann man gar nicht wühlen. („Was ist ein Brausa“ vielleicht noch)

    Den einzigen Knackpunkt stellt das Escapen der Hochkommata dar. So weit warst Du aber noch gar nicht, weil Du nicht mal über Punkt 1 herausgekommen bist. Trotz mehrfacher Aufforderungen, in den Browser-Quelltext zu schauen.

    Einen Kommentar schreiben:


  • Jojo_44
    antwortet
    Meiner Meinung nach gehört das aber nicht zu den Grundlagen, weil in meinem Javascript Buch steht das nirgends. Und ich hab alle 1000 Seiten gelesen Mir dann gleich ein schlechte Bewertung geben mit der Aussage "geh Grundlagen lernen" find ich doch ziemlich hart. Vor allem als Js Anfänger.

    @Paul.Schramenko
    jap vielen Dank, habs glaub ich genauso wie deins

    PHP-Code:
    $Parameter 'hallo nice'

    echo 
    '<a href="javascript:Server(\''.$Parameter.'\');">Absenden</a>'
    mfg Jojo

    Einen Kommentar schreiben:


  • Paul.Schramenko
    antwortet
    PHP-Code:
    $Text "Jo klappt";
    $Test '<a href="javascript:Server(\''.$Text.'\');">Absenden</a>'
    Wenn du den Rat von nikosch folgen möchtest, geht das so beispielsweise wesentlich einfacher...
    Edit:
    Obwohl bin mir da grad net sicher, ob da net noch was escaped werden müsste. Ich glaub so is besser.

    Einen Kommentar schreiben:


  • Jojo_44
    antwortet
    Ok vielen Dank, letztendlich doch noch zum gewünschten Ergebnis gekommen. Mein nächstes Problem kommt bestimmt

    mfg Jojo

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    $Test = '<a href="javascript:Server('.$Parameter.');"';

    echo $Test.">Absenden</a>";
    Vor allem sollte man Tags nicht auftrennen.

    Einen Kommentar schreiben:

Lädt...
X