senden Formular AKTION zu einer anderen php-Seite, die Ergebnis von der 1. Seite
Habe ich 2 Seiten. Man nannte test.php ist nur, dass einige html auf es mit ein Moor-standard-form.
<Form name ="form1" Method ="GET" Action ="result.php">
room number: <INPUT TYPE = "TEXT" Name ="roomId">
<INPUT TYPE = "Submit" Name = "Submit" VALUE = "Go">
</FORM>
und eine andere Seite wird Prozess genannt results.php.
$roomId = $_POST['roomId'];
$sql = mysql_query("SELECT * FROM forestcourt WHERE id=$roomId");
$id2 = 'id';
$buildingName = 'buildingName';
$subBuildings = 'subBuildings';
$imagePath = 'imagePath';
$description = 'description';
$rows2 = mysql_fetch_assoc($sql);
echo 'Name: ' . $rows2[$buildingName] . '<br/>' . 'Sub Buildings: ' . $rows2[$subBuildings] . '<br/>' . 'Description: ' . $rows2[$description] . '<br/>' . 'Location: ' . '<img src="../' . $rows2[$imagePath] . '"/>' . '<br/><br/>';
Was ich will, es effektiv zu tun ist, schnappen Sie sich den Wert aus der Eingabe auf test.php und speichern es auf dem results.php Seite als $roomId
wenn der submit-button gedrückt wird. Ich habe es mit anderen Beispielen, aber ich bin mir nicht sicher, warum es ist nicht hier... Hoffentlich hab ich gerade gemacht, eine einfache Fehler und jemand kann nur zeigen Sie es aus!
Ich weiß, dass die Seite mit der Datenbank verbunden, weil, wenn ich etwas kommentieren 'results.php" es packt die Informationen aus der Datenbank.
Wenn ich kommentieren:
$roomId = $_POST['roomId'];
und ändern:
$sql = mysql_query("SELECT * FROM forestcourt WHERE id=$roomId");
;
$sql = mysql_query("SELECT * FROM forestcourt WHERE id=1");
den Informationen auf der results.php Seite ist die gleiche wie in der Datenbank.
Einen Fehler, der kommt, wenn ich den Prozess Durchlaufen ist;
"Warning: mysql_fetch_assoc(): geliefert argument ist keine gültige MySQL
result resource in
/websites/123reg/LinuxPackage23/ed/ge/_g/xxx.co.uk/public_html/testing/result.php
on line 49"
Linie 49 wäre:
$rows2 = mysql_fetch_assoc($sql);
auf results.php.
Wenn jemand könnte etwas Licht auf, warum es nicht funktioniert, dass wäre toll.
Ich bin ziemlich neu mit MySQL-und ich habe den besten Teil von einem Tag auf dieses problem!!! Wenn noch mehr Informationen benötigt werden werde ich schnell versuchen, und es versorgen.
get
. Sollten Sie verwenden $_GET['roomId']
Zugriff auf super-Globale variable... oder ändern form Methode zu post
.Danke für die Antwort, Hallaji! Ein Tag Arbeit endlich fertig!
InformationsquelleAutor EHU-Lewis | 2013-09-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie entweder ändern
method="post"
im test.php oder ändern$roomId = $_GET['roomId'];
oder$roomId = $REQUEST['roomId'];
im results.phpWenn Sie method="GET" im form-Sie fangen die Werte in der result.php mit der gleichen Methode ($_GET) und das gleiche gilt für die POST. Das ist nur, wie PHP funktioniert. Sie können auch $_REQUEST in results.php fangen gesendeten Werte mit method="GET" als auch method="POST", aber das hat andere Probleme. (stackoverflow.com/questions/1924939/php-request-vs-get-and-post)
bitte @diffie hinzufügen, dass auf Ihre Antwort
InformationsquelleAutor diffie
Ihre Seite Aktion ist
result.php
nichtresults.php
,ändern Sie Ihre form zuPOST
wenn Sie möchten, dass Sie Ihren code, um zu arbeiten:und in php , überprüfen Sie zuerst, dass Sie Wert wie diese :
InformationsquelleAutor Charaf JRA
wenn Sie möchten, obige code oder so etwas wie
$_POST['roomId'] = $roomid
zu arbeiten.als die folgenden:
oder
Haben Sie vielleicht aussortiert, aber für andere Menschen.
natürlich form method muss POST oder GET Entsprechend.
InformationsquelleAutor Jigesh Raval