Php 错误:strpos()[function.strpos]:空分隔符

Php 错误:strpos()[function.strpos]:空分隔符,php,strpos,Php,Strpos,我用这个密码有点小问题 <form action="index.php" method="post"> 1<input type="text" name="A" <br> 2<input type="text" name="B" <br> 3<input type="text" name="C" <br> <input type="submit" value="Submit"><

我用这个密码有点小问题

<form action="index.php" method="post">

    1<input type="text" name="A" <br>
    2<input type="text" name="B" <br>
    3<input type="text" name="C" <br>
     <input type="submit" value="Submit"><br>

</form> 


1在你的情况下,你应该这样做:

<?php
$a = $_POST['A'];  $b = $_POST['B'];  $c = $_POST['C'];
if(!empty($a) || empty($b) || trim($a) == '' || trim($b) == '') {
    echo "empty" ;
} else {
    $szukaj = strpos($a, $b);
    if ($szukaj === false ) {
        echo 'hehe ';
    } else {
        echo 'hihi ';
    }
}
?>

您对空的检查有点不正确,您必须在空条件下使用else,只有在strpo不为空时才能运行strpo。

我还将另一个if放在else中,以确保设置了$szukaj变量。

您的html错误,我已经为您整理了一下

<form action="index.php" method="post">
    1<input type="text" name="A" /><br />
    2<input type="text" name="B" /><br />
    3<input type="text" name="C" /><br />
    <input type="submit" value="Submit" /><br />
</form>

1
2
3


可能的重复:错误是当字段为空时……当字段为空时,必须使用$needle($b)执行此操作。但是我不知道如何计算它。请注意,
trim($a,$b)
$b
视为要从
$a
中修剪的字符列表。。。。我想你是想用trim($a)=''trim($b)=''
都是空的。。当我把它们填满的时候,没关系。但是如果它们是空的,我希望msg填充它们而不是错误你有没有试过查看
$a
$b
的值?我想这一切都写得很快,为了测试显示他得到的错误,因为一切似乎都太“测试”了,无法在实际代码中使用,想象一下称为a、b、c和echo'hehe'和echo'hihi'的变量。
<form action="index.php" method="post">
    1<input type="text" name="A" /><br />
    2<input type="text" name="B" /><br />
    3<input type="text" name="C" /><br />
    <input type="submit" value="Submit" /><br />
</form>