Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 一个不起作用的选择_Php_Mysql - Fatal编程技术网

Php 一个不起作用的选择

Php 一个不起作用的选择,php,mysql,Php,Mysql,我有一个选择不起作用 $person = mysql_query ("Select personID from persons order by personID desc Limit 0,1"); $query_string = 'INSERT INTO topics (topic, description, abstrac

我有一个选择不起作用

$person = mysql_query ("Select personID from persons order by personID desc Limit 0,1");        

$query_string = 'INSERT INTO topics (topic, 
                                      description,
                                      abstract,
                                      personID) 
                            VALUES (?, ?, ?, ?)';

$query = $db->prepare($query_string);

$query->execute(array($_POST['topic'], 
                      $_POST['description'], 
                      $_POST['abstract'],
                      $person));
我不明白问题出在哪里

问题出在这里

$person = mysql_query ("Select personID from persons order by personID desc Limit 0,1");
做这个

$result = mysql_query ("Select personID from persons order by personID desc Limit 0,1");
$row = mysql_fetch_array($result);
$person = $row['personID'];

$person
是一个mysql结果,而不是任何类型的值

试试这个:

list($person) = mysql_fetch_row(mysql_query("select personID from ....."));
$dbh=newpdo('mysql:host='.$server.';dbname='.$db,$user,$pass);
$st=$dbh->prepare('SelectPersonID fromPersonOrder by personID desc Limit 0,1');
$st->execute();
$result=$st->fetchAll();
//用于测试目的,使其更容易。
回声“;
打印(结果);
回声“;
//结束测试
echo$result[0]['personID'];
请尝试使用此PDO代码来选择和使用数据。PDO是首选方法。也可以使用mysqli代替mysql。
我们不清楚你的担忧。如果你复制粘贴错误信息,或者编辑你的帖子,告诉我们你真正想要什么,你不能做什么,这会更好。希望我的帮助奏效

您正在混合在mysqli中获取mysql。我试试这个


什么问题?告诉我们你为什么认为有问题。告诉我们发生了什么,以及你期望发生什么。嗨。有like或函数。“请帮助我理解代码中的错误”-Gawd我喜欢这些类型的问题。如果是“你的”代码,那么你应该已经知道哪里出了问题。当我建立代码,甚至是一个“后院棚”,和基础,2x4的ETC没有正确地建立/放在一起,那么是的…如果你不知道自己在做什么,或者不知道如何使用锤子/工具,那么肯定会出问题。
$dbh = new PDO('mysql:host='.$server.';dbname='.$db, $user, $pass);
$st=$dbh->prepare('Select personID from persons order by personID desc Limit 0,1');
$st->execute();
$result=$st->fetchAll();
//FOR TEST PURPOSE TO MAKE IT EASY.
echo "<pre>";
print_r($result);
echo "</pre>";
//END TEST
echo $result[0]['personID'];
   $person = $db->prepare("Select personID from persons order by personID desc Limit 0,1");   
   $person->execute();     
   $person->store_result();
   $person->bind_result( $personID )  ; // to bind the result as variable to use it later
   $person->fetch();

   $query_string = 'INSERT INTO topics (topic, 
                                  description,
                                  abstract,
                                  personID) 
                        VALUES (?, ?, ?, ?)';

   $query = $db->prepare($query_string);

    $query->execute(array($_POST['topic'], 
                  $_POST['description'], 
                  $_POST['abstract'],
                  $personID));