2016-12-04 124 views
1

我試圖檢查給定的信息是否正確與PHP和MySQL! (對於android項目),但是當我發送它們,並嘗試使用POST方法並在我的數據庫中比較它們時,POST方法總是返回沒有發送信息。 所以這是我的代碼:Post方法總是不返回任何內容

<?php 
$mysqli = new mysqli("localhost", "root", "", "hochschule"); 

/* verify connection */ 
if (mysqli_connect_errno()) { 
printf("connection failed : %s\n", mysqli_connect_error()); 
exit(); 
} 
/* recover data */ 
$benutzername = $mysqli->real_escape_string(isset($_POST['PARAM_LOGIN'])); 
$passwort = $mysqli->real_escape_string(isset($_POST['PARAM_PASSWORT'])); 

$result = $mysqli->query("SELECT COUNT(*) FROM user WHERE benutzername ='$benutzername' AND passwort='$passwort'"); 
$row = $result->fetch_row(); 
if($row[0] !=0) { 
printf("true"); 
}else 
printf("false"); 

/* Closing the connection */ 
$mysqli->close(); 
?> 

我使用PHP 5.6和MYSQL 5.7,我用DHC的插件在谷歌瀏覽器測試PHP腳本。
注:
我想這是因爲我使用PHP 5.6和MYSQL 5.7和這個代碼,我用它爲早期項目,並與之前版本的PHP(5.5)和MYSQL(5.6)的兼容性的問題,它當時工作得很好。
謝謝你的幫助。

+0

返回的東西使用''像回聲$行[0] echo'命令;' –

+0

我做到了!它什麼都沒回來!這就像我沒有發送任何東西 – user3816569

+0

你剛剛嘗試var_dump($ _ POST)來檢查你是否發送任何東西? – piotr

回答

1

問題是isset只是返回一個布爾值(true或false) - 而不是參數的值。

所以,你想是這樣的:

/* recover data */ 
$benutzername = null; 
$passwort = null; 

if(isset($_POST['PARAM_LOGIN'])) 
    $benutzername =$mysqli->real_escape_string($_POST['PARAM_LOGIN']); 
if(isset($_POST['PARAM_PASSWORT']) 
    $passwort = $mysqli->real_escape_string($_POST['PARAM_PASSWORT']); 
+0

謝謝,但它沒有奏效:/ – user3816569

+0

對於遲到的回覆抱歉,但你的解決方案解決了我的問題,我沒有意識到,因爲谷歌瀏覽器中的插件「reslet」是問題!再次感謝你 – user3816569

相關問題