Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.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_Mysqli - Fatal编程技术网

搜索结果中的PHP链接工作不正确

搜索结果中的PHP链接工作不正确,php,mysqli,Php,Mysqli,我有一个小问题,我一直在测试一些变体,但我没有让它工作。 我在搜索结果中有一个链接。。(全文检索工作) >while($row=mysql\u fetch\u assoc($query)){ > >$id=$row['id']; > >回声'; 它将信息显示为一个链接,当我点击它时,我跳转到profile1.php,但我没有看到任何结果,这是一个完全空白的页面。我得到的url是…/profile1.php?id= 这是我的profile.php <?php $mysqli = ne

我有一个小问题,我一直在测试一些变体,但我没有让它工作。 我在搜索结果中有一个链接。。(全文检索工作)

>while($row=mysql\u fetch\u assoc($query)){
> 
>$id=$row['id'];
> 
>回声';
它将信息显示为一个链接,当我点击它时,我跳转到profile1.php,但我没有看到任何结果,这是一个完全空白的页面。我得到的url是…/profile1.php?id=

这是我的profile.php

<?php

$mysqli = new mysqli("", "", "", ""); /* REPLACE NECESSARY DATA */

/* ESTABLISH CONNECTION */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$id=$_GET["id"];

if ($stmt = $mysqli->prepare("SELECT name, brand FROM table WHERE id=?")) {

    $stmt->bind_param("d", $id); /* BIND DATA TO QUERY */

    $stmt->execute(); /* EXECUTE QUERY */

    $stmt->bind_result($name, $brand); /* BIND RESULT TO VARIABLE */

    $stmt->fetch(); /* FETCH DATA */

    printf("%s - %s", $name, $brand); /* ECHO DATA */

    $stmt->close(); /* CLOSE STATEMENT */
}

$mysqli->close();

?>

我希望有人能帮我…谢谢!!!

注意:
  • 您已将id分配给变量,因此最好将该变量用于链接。您应该学习如何将变量合并到链接中
  • 在内部使用变量时,最好使用单个勾号(
    )。如果要绑定的变量是整数类型,则在查询中不使用单个勾号(
您的链接应如下所示:

 $id = $row['id'];

 echo '<a href="profile1.php?id='.$id.'" >.INFO.</a>';
还建议使用
mysqli\u*
而不是
mysql\u*
API。请阅读此处了解更多信息

如果您将它放入
mysqli.*
prepared语句中,它将如下所示(
profile1.php
):


执行此操作

 echo "<a href=profile1.php?id=$row[id]>INFO</a>";
echo”“;
或者这个

echo '<a href=profile1.php?id='.$row['id'].'>INFO</a>'
echo''

您正在使用我提供的代码。现在可以使用了吗?
<?php

  /* RE-ESTABLISH YOUR MYSQL CONNECTION */
  $con = new mysqli("YourHost", "yourUsername", "YourPassword", "YourDB"); /* REPLACE NECESSARY DATA */

  /* CHECK CONNECTION */
  if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
  }

  if ($stmt = $con->prepare("SELECT name, brand FROM table WHERE id = ?")){
    $stmt->bind_param("i", $_GET["id"]); /* PARAMETIZE GET ID TO QUERY */  
    $stmt->execute(); /* EXECUTE QUERY */    
    $stmt->bind_result($name, $brand); /* BIND RESULT TO VARIABLE */
    $stmt->fetch(); /* FETCH DATA */
    printf("%s - %s", $name, $brand); /* ECHO DATA */
    $stmt->close(); /* CLOSE STATEMENT */
  }

  $con->close();

?>
 echo "<a href=profile1.php?id=$row[id]>INFO</a>";
echo '<a href=profile1.php?id='.$row['id'].'>INFO</a>'