Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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中搜索每行texarea数据,并在html表中显示结果?_Php_Mysql - Fatal编程技术网

Php 如何在mysql中搜索每行texarea数据,并在html表中显示结果?

Php 如何在mysql中搜索每行texarea数据,并在html表中显示结果?,php,mysql,Php,Mysql,您好,我正在获取文本区域数据,这些数据是一个接一个的imageurl链接,并尝试在mysql数据库中搜索这些图像URL,如果在db中找到imageurl,则在html表中显示完整的行信息 我尝试了下面的代码,但得到了空的html表!我也没有得到任何mysql错误!我不确定我是否正确地分隔了每行textarea数据!谁能告诉我我做错了什么 表格: 示例文本 phpcode: $textarea_value = $_POST['links']; $lines = explode("\n",

您好,我正在获取文本区域数据,这些数据是一个接一个的imageurl链接,并尝试在mysql数据库中搜索这些图像URL,如果在db中找到imageurl,则在html表中显示完整的行信息

我尝试了下面的代码,但得到了空的html表!我也没有得到任何mysql错误!我不确定我是否正确地分隔了每行textarea数据!谁能告诉我我做错了什么

表格:


示例文本

phpcode:
$textarea_value = $_POST['links'];
$lines = explode("\n", $textarea_value);



$server   = "localhost"; // MySQL hostname
$username = "xxxxx"; // MySQL username
$password = "xxxxx"; // MySQL password
$dbname   = "xxxxx"; // MySQL db name

$db = mysql_connect($server, $username, $password) or die(mysql_error());
      mysql_select_db($dbname) or die(mysql_error());

echo "<table border='1'>
<tr>
<th>user name</th>
<th>page URL</th>
</tr>";


foreach ($lines as $line) {

$result = mysql_query("SELECT ID,username,imageUrl,imagePageURL FROM mydb WHERE imageUrl = '$line'");
             if (!$result) {
             die('Invalid query: ' . mysql_error());
            }

while($row = mysqli_fetch_assoc($result))
{
  echo "<tr>";
  echo "<td>" . $row['username'] . "</td>";
  echo "<td>" . $row['imagePageURL'] . "</td>";
  echo "</tr>";
}

};

echo "</table>";

?>
$textarea\u value=$\u POST['links';
$lines=explode(“\n”,$textarea\u值);
$server=“localhost”;//MySQL主机名
$username=“xxxxx”//MySQL用户名
$password=“xxxxx”//MySQL密码
$dbname=“xxxxx”//MySQL数据库名称
$db=mysql\u connect($server、$username、$password)或die(mysql\u error());
mysql_选择_db($dbname)或die(mysql_error());
回声“
用户名
页面URL
";
foreach($line作为$line){
$result=mysql_查询(“从mydb中选择ID、用户名、imageUrl、imagePageURL,其中imageUrl='$line');
如果(!$result){
die('无效查询:'.mysql_error());
}
while($row=mysqli\u fetch\u assoc($result))
{
回声“;
回显“$row['username']”;
回显“$row['imagePageURL']”;
回声“;
}
};
回声“;
?>

尝试插入
打印($line)
检查分解函数的结果。这可能会提示您注意这个问题。谢谢。我试着用print_r inside为每一行进行打印。explode函数的结果是正确的,我得到了数组中texarea的所有行,但是为什么我的sql语句找不到数据并显示它们呢?嗯。。。回显您的查询字符串一次以检查它并与您的表进行比较?似乎WHERE条件不正确或有什么问题。谢谢您的回复。您能告诉我如何回复查询吗?我尝试使用echo$result,但得到了以下错误:可捕获的致命错误:类mysqli_result的对象无法转换为字符串简单拆分字符串和您的查询,如下所示:
$query=“从mydb中选择ID、用户名、imageUrl、imagePageURL,其中imageUrl='$line'$结果=mysql\u查询($query);echo$query
$textarea_value = $_POST['links'];
$lines = explode("\n", $textarea_value);



$server   = "localhost"; // MySQL hostname
$username = "xxxxx"; // MySQL username
$password = "xxxxx"; // MySQL password
$dbname   = "xxxxx"; // MySQL db name

$db = mysql_connect($server, $username, $password) or die(mysql_error());
      mysql_select_db($dbname) or die(mysql_error());

echo "<table border='1'>
<tr>
<th>user name</th>
<th>page URL</th>
</tr>";


foreach ($lines as $line) {

$result = mysql_query("SELECT ID,username,imageUrl,imagePageURL FROM mydb WHERE imageUrl = '$line'");
             if (!$result) {
             die('Invalid query: ' . mysql_error());
            }

while($row = mysqli_fetch_assoc($result))
{
  echo "<tr>";
  echo "<td>" . $row['username'] . "</td>";
  echo "<td>" . $row['imagePageURL'] . "</td>";
  echo "</tr>";
}

};

echo "</table>";

?>