我在我的Android應用程序中有3個php文件 - 連接數據庫的dbConnect.php
,登錄用戶的volleyLogin.php
,以及獲取關於登錄用戶的一些信息的UserDetails.php
。爲什麼包含在我的PHP文件中不包括我的變量?
他們在我的瀏覽器中運行文件時工作完美,但是從我的Android應用程序UserDetails.php
運行時無法正常工作。它保持返回'0結果',我被告知變量username
是未定義的,即使我使用include
語句,它應該將一個PHP文件的內容插入另一個PHP文件。
我dbConnect.php
看起來是這樣的:
<?php
define ('HOST', 'localhost');
define ('USER', 'root');
define ('PASS', 'password');
define ('DB', 'dbname');
$con = mysqli_connect("localhost", "root", "password", "dbname") or die('Unable to Connect');
?>
我volleyLogin.php
是這樣的:
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$username = $_POST['username'];
include('dbConnect.php');
$sql = "SELECT * FROM user WHERE username = '$username'";
$result = mysqli_query($con,$sql);
$check = mysqli_fetch_array($result);
if(isset($check)){
echo 'success';
} else {
echo 'Could not log in';
}
}
?>
而且UserDetails.php
看起來是這樣的:
<?php
include('dbConnect.php');
include('volleyLogin.php');
$resultSet = $con->query("SELECT category.cat_name FROM category INNER JOIN user ON category.user_id =
user.user_id WHERE user.username = '$username' ")
or die($con->error);
if ($resultSet->num_rows > 0) {
while($rows = $resultSet->fetch_assoc()) {
$catname = $rows['cat_name'];
echo "<p> Name: $catname </p>";
}}
else {
echo "0 results";
}
//echo "userdetails.php works";
$con->close();
?>
問題行是:
$resultSet = $con->query("SELECT category.cat_name FROM category INNER JOIN user ON category.user_id =
user.user_id WHERE user.username = '$username' ")
使用' require'而不是'include'並檢查日誌。 –