2016-07-04 6 views
0

Ich habe eine Seite, die ein Formular mit der Methode "GET" enthalten. Wenn ich es einreiche, ist der Wert auf die nächste Seite zum Beispiel http://localhost/land_by_province.php?province_id=14, aber wenn ich echo isset($_REQUEST['province_id']); verwende, bekomme ich immer '1'.

Auch ich habe den Wert von Provinz_ID geändert, indem $_REQUEST['province_id'] immer '1' zurückgeben.

Warum ist es so?

Antwort

3

isset() gibt einen booleschen Wert zurück, nicht den Wert der Variablen. Da diese Variablen gesetzt sind, erhalten Sie eine 1, was Sie bei der Ausgabe von Boolean TRUE in PHP erhalten.

Sie möchten also den Inhalt der Variablen zurückgeben, ohne isset() zu verwenden.

echo $_REQUEST['province_id']; 

FYI, es ist immer sicherer $_GET über $_REQUEST zu verwenden.

0

ISSET

ISSET prüft die Variable, um zu sehen, ob es mit anderen Worten festgelegt wurde, überprüft er, ob die Variable einen Wert einen beliebigen Wert außer NULL oder nicht belegt ist. ISSET gibt TRUE zurück, wenn die Variable existiert und einen anderen Wert als NULL hat. Das bedeutet, dass Variablen zugewiesen ein "", 0, "0" oder FALSCH gesetzt und deshalb TRUE für ISSET

Sie müssen

if(isset($_REQUEST['province_id'])) //if value set it return 1 i.e true 
{ 
    echo $_REQUEST['province_id']; 
} 
else 
    { 
    echo "Not Set"; 
    } 
Verwandte Themen