【问题标题】:PHP fetch_assoc is cutting my StringPHP fetch_assoc 正在切割我的字符串
【发布时间】:2015-04-30 13:35:46
【问题描述】:

我在 PHP 中有这段代码:

$i=0;
$resultado= $_GET['resultado'];
echo "<div class=informacion> <b>Usted busco:</b> $resultado </br></br>";
$consultaNegocios = $mysqli->query("SELECT * FROM negocios WHERE nombre LIKE '%$resultado%' OR keywords LIKE '%$resultado%'");
$row_cnt = $consultaNegocios->num_rows;
if ($row_cnt != 0) {
    while ($row = $consultaNegocios->fetch_assoc()) {
        $id = $row['id'];
        $logo = $row['logo'];
        $title = $row['nombre'];
        $telefono = $row['telefono'];
        $keywords = $row['keywords'];
        $direccion = $row['direccion'];
        echo '
        <a href=./detalles/'.$title.'><img src='.$logo.' width=100px height=100px align=left alt=logo de '.$title.'>
        <h2> '.$title.' </a> </h2> 

        <p><b>Direccion: </b>'.$direccion.' </br>
        <b>Telefono:</b>'.$telefono.' </br>
        <b>Palabras de busqueda:</b> '.$keywords.' </br></p>
        </div>
        ';
    }
} else{
    echo "<br><br>No hay resultados";
}

我在 MYSQL 中的 $title 行的查询中有这个:Hello World,但如果我回显 $title,它只返回 Hello,第一个单词。我该怎么做才能返回所有字符串?

编辑:所有代码已更新

【问题讨论】:

  • 检查您的表格字段标题
  • 请显示完整的代码片段 :-)
  • 我想显示所有字符串而不是第一个单词,如果我解释错了对不起
  • 嗯,“nombre”在西班牙语和法语中似乎是“数字”的意思,所以...列的类型和长度是多少?
  • 没有什么会限制你的字符串长度或字数,你的数据库字段结构是什么?

标签: php mysql


【解决方案1】:
echo '<a href="./detalles/'.$title.'"><img src="'.$logo.'" width="100px" height="100px" align="left" alt="logo de '.$title.'" />
        <h2> '.$title.'</h2> </a>
        <p><b>Direccion: </b>'.$direccion.' </br>
        <b>Telefono:</b>'.$telefono.' </br>
        <b>Palabras de busqueda:</b> '.$keywords.' </br></p>
        ';
   }
} else{
    echo "<br><br>No hay resultados";
}
echo '</div>';

说明对于那些有兴趣的人:

  1. 你最好使用模板或MVC的任何概念在php中输出html页面。

  2. 在这种特殊情况下,OP 不尊重 HTML 格式:

    例如:width=100px height=100px 应该是 width="100px" height="100px"

    例如:&lt;a href=./detalles/'.$title.'&gt;... 应该是 &lt;a href="./detalles/'.$title.'"&gt;...

    例如:&lt;a ...&gt;...&lt;h2&gt; '.$title.' &lt;/a&gt; &lt;/h2&gt; 应该是 &lt;a ...&gt;...&lt;h2&gt; '.$title.' &lt;/h2&gt; &lt;/a&gt;&lt;a ...&gt;... &lt;/a&gt; &lt;h2&gt; '.$title.' &lt;/h2&gt;(不破坏 html 结构)

  3. echo '&lt;/div&gt;'; 当打开标签位于循环之外时,关闭标签包含在循环主体中。所以要修复 html,我们需要从循环中提取它并放在循环之后。或者我们可以在循环中包含一些开放标签&lt;div&gt;。但我认为在这种情况下,这不是 OP 所期望的。

【讨论】:

  • 是的,它有效!这似乎是一个 HTML 问题。谢谢大家
  • 太好了,现在你做了什么让它工作?解释也将帮助未来的读者解决这个问题。
  • @Fred-ii- 希望它能真正帮助任何人,但不确定:-)
  • 我相信 Alex 会的,相信我 ;-)
  • @Fred-ii- 是的,因此是我的评论。我应该将“显而易见的事情”改写为“最有可能解决”
猜你喜欢
  • 2014-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多