Formular per PHP erzeugen (Script im Script)

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

  • thommy2006
    antwortet
    Problem gelöst!

    Vielen Dank Euch allen! - Ich habe mit Eurer Hilfe das Problem gelöst!

    Gruß thommy2006

    Einen Kommentar schreiben:


  • computexx
    antwortet
    Du solltest auch im echo-Befehl wenn du HTML Tags einbaust, vor die " ein \ setzten, da sonst der echo-Befehl geschlossen wird.

    Einen Kommentar schreiben:


  • hhcm
    antwortet
    OffTopic:
    Du könntest allerdings auch die Regeln befolgen und deinen Code in PHP Tags setzen, damit man das vernünftig lesen kann.

    Einen Kommentar schreiben:


  • vierteln
    antwortet
    echo '<option value="<?echo $daten[artnr]; ?>">
    <? echo $daten[artnr]; ?> - <? echo $daten[artbez]; ?></option>';

    Da wird nichts substituiert, weil in hardquotes und das Verschachteln von echo im echo ist auch völlig daneben.

    mit hardquotes und Punkten:
    echo '<option value="' . $daten[artnr] . '">'
    .$daten[artnr] .' - '. $daten[artbez] . '</option>';

    mit softquotes und backslashes:
    echo "<option value=\"$daten[artnr]\">
    $daten[artnr] - $daten[artbez] </option>";

    hardquotes ist besser, wenn Du noch htmlspecialchars($daten[artnr]) schreiben musst.

    Einen Kommentar schreiben:


  • icecream
    antwortet
    Außerdem würde ich statt "<?" "<?php" als Einleitung des PHP-Codes verwenden, weil der Code dann auch mit früheren Versionen kompatibel ist.

    echo '<option value="<?echo $daten[artnr]; ?>">
    Das geht auch nicht --> Siehe den Beitrag von mir oben!
    Wenn du in einem echo-Befehl nochmal echo "blabla"; schreibst, wird nicht "blabla", sondern echo "blabla"; ausgegeben.

    Und es fehlt das Semiklon und das abschließende >'<

    Hier nochmal ein Link, den du dir vll. angucken solltest
    http://de.php.net/manual/de/function.echo.php

    Gruß
    icecream
    Zuletzt geändert von icecream; 23.04.2006, 15:53.

    Einen Kommentar schreiben:


  • thommy2006
    antwortet
    Danke für den Tipp!

    Bei mir sieht das Ganze nun so aus:

    PHP-Code:
    if ($check) {

    //Verbindung herstellen
    $db = mysql_connect("localhost","root");
    mysql_select_db("artikel",$db);


    $result = mysql_query("SELECT * FROM stamm ORDER by ID",$db);

    echo '<form action="<?php $PHP_SELF ?>" method="get" target="">
    <p><select name="artnr" size="">
    <? while ($daten = mysql_fetch_array($result)) {';
    echo '<option value="<?echo $daten[artnr]; ?>">
    <? echo $daten[artnr]; ?> - <? echo $daten[artbez]; ?></option>';
    echo '} ?></select></p></form>';
    }

    ?>
     {
    Leider ist der Effekt der Selbe ...

    Einen Kommentar schreiben:


  • icecream
    antwortet
    echo '<form action="<?php $PHP_SELF ?>" method="get" target="">
    Wie soll das funktionieren? Du gibst in einem echo-Befehl PHP-Tags aus, mehr nicht. Außerdem hast du den Semiklon am Schluss vergessen. Das müsste so heißen:
    <?php
    echo '<form action="' . $PHP_SELF . '" method="get" target="">
    <p><select name="artnr" size="" onChange="submit()">';
    ?>

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    der html-tag "option" muss mit einem echo ausgegeben werden.

    Einen Kommentar schreiben:


  • thommy2006
    antwortet
    OK, ich versuche ja, lernfähig zu sein! - Ich hoffe, das geht nun besser so ...

    Wenn noch was falsch ist, sagt's mir ruhig ... ich gebe mir Mühe!

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    sticky thread in diesem forum

    Einen Kommentar schreiben:


  • thommy2006
    antwortet
    Wenn Du mir jetzt noch sagst, wo ich welche Regeln hier finde, befolge ich die gern!

    Einen Kommentar schreiben:


  • penizillin
    antwortet
    bitte die regeln befolgen.

    Einen Kommentar schreiben:


  • thommy2006
    hat ein Thema erstellt Formular per PHP erzeugen (Script im Script).

    Formular per PHP erzeugen (Script im Script)

    Hallo zusammen,

    ich bin noch ein totaler Anfänger (wenn auch mit einigen Start-Erfolgen) und stehe nun vor einem Problem.

    Ich möchte ein Script schreiben, das wenn eine Bedingung erfüllt ist, ein Formular erzeugt. Dieses Formular soll ein SELECT-Feld enthalten, dessen Werte aus einer MySQL-Datenbank ausgelesen werden. Der dort ausgewählte Wert soll anschließend als Variable übergeben werden. Also sozusagen ein Script im Script.

    Mein Ansatz:

    PHP-Code:
    if ($check) {

    //Verbindung herstellen
    $db = mysql_connect("localhost","root");
    mysql_select_db("artikel",$db);


    $result = mysql_query("SELECT * FROM stamm ORDER by ID",$db);

    echo '<form action="<?php $PHP_SELF ?>" method="get" target="">
    <p><select name="artnr" size="" onChange="submit()">
    <? while ($daten = mysql_fetch_array($result)) 
    {<option value="<?echo $daten[artnr]; ?>">
    <? echo $daten[artnr]; ?> - <? echo $daten[artbez]; ?></option>} ?></select></p></form>';
    }
    Ich vermute mal, dass ich wieder über irgendein Hochkomma oder ein Semikolon stolpere.

    Wer hat nen guten Tipp für mich?

    Danke Euch!!
    Zuletzt geändert von thommy2006; 23.04.2006, 15:20.
Lädt...
X