Problem gelöst!
Vielen Dank Euch allen! - Ich habe mit Eurer Hilfe das Problem gelöst!
Gruß thommy2006
Formular per PHP erzeugen (Script im Script)
Einklappen
X
-
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:
-
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:
-
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:
-
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]; ?>">
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ß
icecreamZuletzt geändert von icecream; 23.04.2006, 15:53.
Einen Kommentar schreiben:
-
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>';
}
?>
{
Einen Kommentar schreiben:
-
echo '<form action="<?php $PHP_SELF ?>" method="get" target="">
<?php
echo '<form action="' . $PHP_SELF . '" method="get" target="">
<p><select name="artnr" size="" onChange="submit()">';
?>
Einen Kommentar schreiben:
-
der html-tag "option" muss mit einem echo ausgegeben werden.
Einen Kommentar schreiben:
-
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:
-
Wenn Du mir jetzt noch sagst, wo ich welche Regeln hier finde, befolge ich die gern!
Einen Kommentar schreiben:
-
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>';
}
Wer hat nen guten Tipp für mich?
Danke Euch!!Zuletzt geändert von thommy2006; 23.04.2006, 15:20.Stichworte: -
Einen Kommentar schreiben: