javascript - PHP MySqli 查询无法正常工作,但脚本标记内没有错误

标签 javascript php mysql sql mysqli

我目前有一个系统,通过 mysqli 查询生成用户列表,并且对于每个用户,都会回显一个选择选项:

$result = mysqli_query($db, "SELECT * FROM `users` WHERE `user_id` > 0");
echo '<html><select id="contacts" onchange="announce(this.value)"><option value="Contact list">Contact List</option>';
while($row = $result->fetch_assoc()){
    echo '<option value = '.$row['user_name'].'>'.$row['user_name'] . '</option>';
}
echo '</select>';

我需要选择一个值,其中user等于使用此选择框选择的用户。所以,这就是为什么有这个 JavaScript:

function announce(user_name){
document.getElementById("Divvy").innerHTML="<?php 
$user='"+user_name+"';
if($user != 'Contact list'){
$result = mysqli_query($db, "SELECT `is_doing` FROM `users` WHERE `users`.`user_name` = '{$user}'");
while($row = $result->fetch_assoc()){
$doing = print_r($row);
}
echo $user.' is '.$doing;
}
?>";
}

除了数据库查询之外,所有 PHP 都可以工作,对此我很困惑,因为: 1) $doing 没有返回任何内容 2)查询是(我很确定)正确的 3) DIE(mysql_error()) 没有显示任何错误;

我希望得到一些有关如何使其发挥作用的帮助。

最佳答案

刚刚看到错误 - 您没有转义 javascript 字符串(在 SELECT 语句之前和查询完成之后使用双引号来引用:“)。

替换

$result = mysqli_query($db, "SELECT `is_doing` FROM `users` WHERE `users`.`user_name` = '{$user}'");

与 一个

$result = mysqli_query($db, \"SELECT `is_doing` FROM `users` WHERE `users`.`user_name` = '{$user}'\");

关于javascript - PHP MySqli 查询无法正常工作,但脚本标记内没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22359135/

相关文章:

php - 如何获取自午夜以来经过的秒数

php - 如何自定义WordPress可视化编辑器HTML输出

php - 哪些 PHP IDE 支持 Facebook XHP 扩展?

PHP MySQL 日期比较

javascript - iPhone 的 Python 到 JavaScript

javascript - 使用脚本在窗口中打开链接(Google Sheet)

javascript - 无法动态加载 jQuery UI - 未捕获的 TypeError : Cannot read property 'ui' of undefined

javascript - 如何选择该div?

php - 数据库 - 当我们尝试插入时查询失败

java - 我想将数据从 mysql 加载到 jsp 但出现无法处理的错误