Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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 mysql_fetch_array()上出现警告_Php_Mysql_Syntax Error - Fatal编程技术网

Php mysql_fetch_array()上出现警告

Php mysql_fetch_array()上出现警告,php,mysql,syntax-error,Php,Mysql,Syntax Error,很抱歉浪费您的时间,但我正在尝试将数据库表中的数据存储到数组中并显示在表中。我总是犯同样的错误。我已经更改了“并删除了变量。我仍然可以 警告:mysql_fetch_array():在第41行的/home/a3656574/public_html/home.php中,提供的参数不是有效的mysql结果资源 我不知道如何修复此问题。请有人帮忙吗?请检查您的数据库凭据,然后尝试: <?php if ($_POST['search_projects'] && !empty

很抱歉浪费您的时间,但我正在尝试将数据库表中的数据存储到数组中并显示在表中。我总是犯同样的错误。我已经更改了
并删除了变量。我仍然可以

警告:mysql_fetch_array():在第41行的/home/a3656574/public_html/home.php中,提供的参数不是有效的mysql结果资源



我不知道如何修复此问题。请有人帮忙吗?

请检查您的数据库凭据,然后尝试:

<?php
  if ($_POST['search_projects'] && !empty($_POST['search']))
  {
    $con= mysql_connect("host.com","opacmin","password","opacmin") or die ('Error: ' . mysql_error()); 

    $sql= "SELECT * FROM searchedWords WHERE accessDate LIKE '%" . $_POST['search'] . "%' ORDER BY accessDate DESC";
    $result= mysql_query($sql); 

    while($row= mysql_fetch_array($result))
    { 
      $Date =$row['AccessDate']; 
      $Key=$row['keyWord']; 
      $Count=$row['count']; 

      echo "<tr>"; 
      echo "<td>" .$Date ."</td> ". " <td>" . $Key.  " </td>" . " <td>" . $Count.  " </td>"; 
      echo "</tr>";  
    }
  }
?>

请检查您的数据库凭据,然后尝试:

<?php
  if ($_POST['search_projects'] && !empty($_POST['search']))
  {
    $con= mysql_connect("host.com","opacmin","password","opacmin") or die ('Error: ' . mysql_error()); 

    $sql= "SELECT * FROM searchedWords WHERE accessDate LIKE '%" . $_POST['search'] . "%' ORDER BY accessDate DESC";
    $result= mysql_query($sql); 

    while($row= mysql_fetch_array($result))
    { 
      $Date =$row['AccessDate']; 
      $Key=$row['keyWord']; 
      $Count=$row['count']; 

      echo "<tr>"; 
      echo "<td>" .$Date ."</td> ". " <td>" . $Key.  " </td>" . " <td>" . $Count.  " </td>"; 
      echo "</tr>";  
    }
  }
?>

Mysql连接函数接收3个参数(Mysql\u服务器、Mysql\u用户、Mysql\u密码)

您应该使用mysql\u select\u db(数据库、连接\u资源\u id)选择数据库

还要确保你的证件

尝试:


Mysql连接函数接收3个参数(Mysql\u服务器、Mysql\u用户、Mysql\u密码)

您应该使用mysql\u select\u db(数据库、连接\u资源\u id)选择数据库

还要确保你的证件

尝试:

0)首先,我建议您开始使用PDO,而不是mysql_connect(和friends),因为后者正在被弃用。有教程可以帮助您开始此迁移

1) 我不确定您希望mysql_connect()的第4个参数为您做什么。根据PHP文档,这应该是一个布尔值:

mysql\u connect([string$server=ini\u get(“mysql.default\u host”)[,string$username=ini\u get(“mysql.default\u user”)[,string$password=ini\u get(“mysql.default\u password”)[,bool$new\u link=false…

2) 在转到mysql_fetch_array()之前检查错误条件:

0)首先,我建议您开始使用PDO,而不是mysql_connect(和friends),因为后者正在被弃用。有教程可以帮助您开始此迁移

1) 我不确定您希望mysql_connect()的第4个参数为您做什么。根据PHP文档,这应该是一个布尔值:

mysql\u connect([string$server=ini\u get(“mysql.default\u host”)[,string$username=ini\u get(“mysql.default\u user”)[,string$password=ini\u get(“mysql.default\u password”)[,bool$new\u link=false…

2) 在转到mysql_fetch_array()之前检查错误条件:


首先,我想推荐你开始使用“mysqli”。你可以看看这个


然后,您应该首先检查您的凭据是否正确。如果正确,请访问phpmyadmin并尝试您的查询,看看它是否正常工作。可能您遗漏了一些内容。祝您好运。

首先,我建议您开始使用“mysqli”。您可以查找此信息


然后,您应该首先检查您的凭据是否正确。如果正确,请访问phpmyadmin并尝试您的查询,看看它是否正常工作。可能您遗漏了什么。祝您好运。

请确保这些不是您真正的凭据确保您的查询正确,$sql=”从accessDate类似“%”的searchedWords中选择*。“%”按accessDate描述排序";只需打印它并直接在控制台上运行。您应该使用
mysqli.*
函数,
mysql.*
如果我没有弄错的话,mysql 5.5中的函数是不推荐的。在任何公共论坛中发布时,从mysql con中删除实际凭据。您必须选择一个db;您在
mysql.\u query
之前选择了一个吗?之后
$result=mysql\u query($sql);
add
if(!$result)死(mysql\u error())
。错误消息是什么?此外,正如Maz所说,您应该使用mysqli或PDO而不是mysql_u2;函数。通过使用外部变量构建SQL语句,您将面临SQL注入攻击。此外,任何带有单引号的输入数据,如“O'Malley”名称,将破坏您的SQL查询。请了解如何使用参数化查询(最好与PDO模块一起使用)来保护您的web应用。有一些示例可以帮助您入门,并且有许多详细的示例。请确保这些不是您的真实凭证确保您的查询是正确的,$SQL=“SELECT*FROM searchedWords WHERE accessDate,如“%”.$\u POST['search']。“%”按访问日期说明排序;只需打印它并直接在控制台上运行。您应该使用
mysqli.*
函数,
mysql.*
如果我没有弄错的话,mysql 5.5中的函数是不推荐的。在任何公共论坛中发布时,从mysql con中删除实际凭据。您必须选择一个db;您在
mysql.\u query
之前选择了一个吗?之后
$result=mysql\u query($sql);
add
if(!$result)死(mysql\u error())
。错误消息是什么?此外,正如Maz所说,您应该使用mysqli或PDO而不是mysql_u2;函数。通过使用外部变量构建SQL语句,您将面临SQL注入攻击。此外,任何带有单引号的输入数据,如“O'Malley”名称,将破坏您的SQL查询。请了解如何使用参数化查询(最好与PDO模块一起使用)来保护您的web应用程序。有一些示例可以帮助您入门,并且有许多详细的示例。可能会删除OP错误提供的凭据?感谢您的回复。可能会删除OP错误提供的凭据?谢谢很好的调用,mysql\u select\u db()是一个很好的猜测,他对第四个参数的期望是什么。很好的调用,mysql\u select\u db()对于第四个参数的期望值,这是一个很好的猜测。感谢您的快速响应。不过我最终还是做对了。找到了人亲自帮助我。我也读了关于PDO和mysql_fetch_array()类似的功能很快就会被删除。我现在就开始适应。不管怎样,再次感谢你。感谢你的快速响应。不过我最终还是做对了。找到了一个人亲自帮助我。我读到了关于P
$con= mysql_connect("host","username","password");
mysql_select_db("a3656574_opacmin",$con);
$sql= "SELECT * FROM searchedWords WHERE accessDate LIKE '%" . $_POST['search'] . "%' ORDER BY accessDate DESC";
$result= mysql_query($sql); 

if (! $result) {
    // use something like mysql_error() to find out why it failed, log it, etc.
} else {
    while( ... ) { ... }
}