2017-07-03 5 views
0

Ich erstelle eine Pizza Bestellseite mit PHP. Jetzt möchte ich die Variable, die über die URL innerhalb des Formulars übergeben wurde, zurückgeben. Ich weiß, wie diese Daten abgerufen werden: <?php echo $_GET["numpizzas"]; ?>. Aber ich kenne nicht den richtigen Weg, um es zu meinem HTML-Formularfeld hinzuzufügen. Jede Hilfe ist sehrfüllen Eingabefeld mit PHP Variable

geschätzt
<?php 

echo 
'<form action="pizza.php" method="post"> 
<h1>Thanks for Ordering. Please submit your delivery info.</h1> 
<label>Name:</label> <input type="text" name="name"> 
<label>Address:</label> <input type="text" name="address"> 
<label>Phone:</label> <input type="text" name="phone"> 
<label>Money: </label><input type="text" name="money" value="<?php echo "hi"; ?>" > 
//Money field does not populate with number, I just see <?php echo $_GET[ 
<label>Feedback:</label> <input type="text" name="feedback"> 
<input type="submit" value="Submit"> 
</form>'; 

?> 
<?php echo $_GET["numpizzas"]; ?> 

Ich habe auch versucht die ganze Zahl in einer Variablen $howmanypizzas = $_GET["numpizzas"]; ?> Speicherung aber es zeigt immer noch nicht als Feldwert auf.

+0

ja die Seite ist PHP-Erweiterung – st4rgut

Antwort

1

<?php echo $_GET["numpizzas"]; ?> nicht nur die Daten abrufen. echo gibt es auch auf die HTML-Antwort (der Bildschirm)

da Sie bereits mit einem ECHO Ihre HTML sind vorbei, können Sie tun:

<?php 

echo 
'<form action="pizza.php" method="post"> 
<h1>Thanks for Ordering. Please submit your delivery info.</h1> 
<label>Name:</label> <input type="text" name="name"> 
<label>Address:</label> <input type="text" name="address"> 
<label>Phone:</label> <input type="text" name="phone"> 
<label>Money: </label><input type="text" name="money" value="'.$_GET["numpizzas"].'" > 
<label>Feedback:</label> <input type="text" name="feedback"> 
<input type="submit" value="Submit"> 
</form>'; 

?> 

Erklärung: Echo ist eine Funktion, die einen String und gibt recieves es zu html. Mit dem Verkettungsoperator . können Sie also die Variable $_GET["numpizzas"] in Ihren HTML-Code als Zeichenfolge einfügen und an die Echofunktion übergeben, die sie an den Browser ausgibt. Eine andere Möglichkeit, es zu lösen, besteht darin, nur PHP aufzurufen, wo Sie Ihre Logik verarbeiten müssen, genau wie @pavithra antwort, was auch funktioniert.

0
<input type="text" name="money" value="<?php echo $_GET["numpizzas"]; ?>" /> 

aber ich nicht bekommen, warum Sie bekommen dies als get variable.hope ist dies funktioniert

<form action="pizza.php" method="post"> 
    <h1>Thanks for Ordering. Please submit your delivery info.</h1> 
    <label>Name:</label> <input type="text" name="name"> 
    <label>Address:</label> <input type="text" name="address"> 
    <label>Phone:</label> <input type="text" name="phone"> 
    <label>Money: </label> <input type="text" name="money" value="<?php echo $_GET["numpizzas"]; ?>" /> 

    <label>Feedback:</label> <input type="text" name="feedback"> 
    <input type="submit" value="Submit"> 
</form> 
1

Sie wiederholen bereits und versuchen, in diesem zu echo. Sie benötigen eine Variable mit der Zeichenfolge verketten, die Sie Echo, siehe PHP Strings:

echo 
'<form action="pizza.php" method="post"> 
<h1>Thanks for Ordering. Please submit your delivery info.</h1> 
<label>Name:</label> <input type="text" name="name"> 
<label>Address:</label> <input type="text" name="address"> 
<label>Phone:</label> <input type="text" name="phone"> 
<label>Money: </label><input type="text" name="money" value="' . $_GET["numpizzas"] . '"> 
<label>Feedback:</label> <input type="text" name="feedback"> 
<input type="submit" value="Submit"> 
</form>'; 

Sie auch Heredoc Syntax betrachten könnten.

Verwandte Themen