Php 零除警告

Php 零除警告,php,mysql,Php,Mysql,我一直在编写一个包含三个字段的搜索表单,而给我带来麻烦的是在sql中使用“LIKE”子句的表单 代码如下: <form method="post" action="<?php $_SERVER['PHP_SELF']?>"> <p> <label for="nome">Nome Empresa:</label> <input t

我一直在编写一个包含三个字段的搜索表单,而给我带来麻烦的是在sql中使用“LIKE”子句的表单

代码如下:

            <form method="post" action="<?php $_SERVER['PHP_SELF']?>">
             <p>

             <label for="nome">Nome Empresa:</label>
             <input type="text" name="nome"  id="nome"/>

             <label for="concelho">Concelho:</label>
                <select name="concelho">
                        <option id="" selected="selected" value="">Seleccione o Concelho</option>
                          <option value="1" id="1">Um</option>
                          <option value="2" id="1">Dois</option> 
                 </select>

             <label for="actividade">Actividade:</label>
                <select name="actividade">
                        <option id="" selected="selected" value="">Seleccione a actividade</option>
                          <option value="1" id="1">Actividade Um</option>
                          <option value="2" id="1">Actividade Dois</option>    
                 </select>   
             </p>
             <p>
             <input type="submit" name="pesquisar" value="Pesquisar"/>
             </p>
            </form>
为什么它两次给我这个错误

Warning: Division by zero in .. on line ..

Warning: Division by zero in .. on line ..
我不是在分裂……是吗


提前谢谢

是的,谢谢。像这样的
%%
使用的符号在字符串之外,因此被解释为模运算符。移除附加的“标志”

$queryStr .= "tbl_clientes WHERE nome LIKE '%$nome%'";

(这里我混合使用了单引号和双引号来解决这个问题。转义内部单引号的解决方案同样有效。在PHP编程时,您经常会发现需要使用(组合)这些技术。)

您的错误在于这段SQL

'tbl_clientes  WHERE nome LIKE '%'$nome'%''
您需要转义字符串中多余的撇号

我假设这个的PHP语法是
\
字符

e、 g


或者使用sprintf:$queryStr.=sprintf(“tbl_客户机,其中nome类似于''%s%'”,$nome);标点符号呢?有时,如果我在输入框中写下类似“A.Helper”的内容,并且在数据库中存在该名称,为什么没有结果?@Daniel:你需要写%%才能得到文字%。@Dutraveler:like对标点符号没有不同的处理。没有任何额外的信息,很难猜出哪里出了问题。
'tbl_clientes  WHERE nome LIKE '%'$nome'%''
'tbl_clientes  WHERE nome LIKE \'%'$nome'%\''