У меня есть 3 php-файла в моем приложении для Android - 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' и проверить журнал. –