Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.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 如何检查数据库列中是否存在var,如果不存在,则什么也不做';T_Php_Mysql_Where_Exists - Fatal编程技术网

Php 如何检查数据库列中是否存在var,如果不存在,则什么也不做';T

Php 如何检查数据库列中是否存在var,如果不存在,则什么也不做';T,php,mysql,where,exists,Php,Mysql,Where,Exists,嗨,我是mysql的新手,我希望我尝试做的事情很简单。当planets表中与$imgFile相对应的标题列下有一个条目时,下面的sql就会工作。我的问题是并不是所有的$imgFiles都在数据库中。因此,在这种情况下,第3行$caption=mysql\u result($data,'0')抛出以下错误: 警告:mysql_result()[function.mysql result]:无法跳转到第3行/home/drawapl1/public_html/planet.php中mysql结果索引

嗨,我是mysql的新手,我希望我尝试做的事情很简单。当planets表中与$imgFile相对应的标题列下有一个条目时,下面的sql就会工作。我的问题是并不是所有的$imgFiles都在数据库中。因此,在这种情况下,第3行
$caption=mysql\u result($data,'0')
抛出以下错误:

警告:mysql_result()[function.mysql result]:无法跳转到第3行/home/drawapl1/public_html/planet.php中mysql结果索引3的第0行

如何更改此设置,使其仅在存在$imgFile的位置设置$caption

$retrieveCaption="SELECT caption from planets where image='$imgFile'";

$data=mysql_query($retrieveCaption); 

$caption=mysql_result($data, '0');

echo $caption;

Yoy可以询问MySQL是否发现了任何东西:

if(0

如果没有结果,不要使用mysql\u结果

另外:“0”希望是0(整数而不是字符串)


另外:您应该转义SQL查询中的所有输入,因此您应该转义$imgFile

您可以用
mysql\u num\u rows()
捕获空结果集

或者使用一个在这种情况下不会抛出警告的函数,比如
mysql\u fetch\u assoc()


到目前为止,你已经问了9个问题。现在是你学习设置代码格式的时候了。很抱歉,你不喜欢这种格式。如果你能指出我哪里出了问题,也许我可以改进。我对编码相当陌生,但最近开始做更多的工作作为一种爱好。他在这个网站上的问答中谈到将代码格式设置为代码示例。你可以这样做这可以通过选择代码示例,然后点击编辑器中的
{}
按钮来实现。
if( mysql_num_rows($data) == 0 ) {
    // No results returned
$row = mysql_fetch_assoc($data);
if( $row ) {
    $caption = $row['caption'];
} else {
    $caption = "Default";
}