2015-09-18 113 views
1

我已经编写了下面的代码,但我不明白为什么会出现这些错误。非法字符串偏移量和未初始化字符串

我基本上想要实现的是,这段代码检查表单是否被填充,如果没有,它会输出一个错误。奇怪的是,它的工作原理放在了第一位,与($name['name']),但在那之后,它不会工作..

<?php 
    $name = ""; 
    $username = ""; 
    $password = ""; 

    $name = $_POST['name']; 
    $username = $_POST['username']; 
    $password = $_POST['password']; 

    if(isset ($name['name']) || ($username['username']) || ($password['password'])) { 
     echo "Hurray, user was created!"; 
    } else { 
     echo "Looks like something isn't filled out, try again!"; 
    } 
?> 
+0

您已经用'$ _POST [“name”]''取消了输入数组的引用,所以'$ name' var等已经包含一个字符串。因此不需要在'if'中添加数组索引。 – mario

回答

0

类似以下内容可能会为你工作...

if(isset($_POST['name']) && isset($_POST['username']) && isset($_POST['password'])) { 
     echo "Hurray, user was created!"; 
    } else { 
     echo "Looks like something isn't filled out, try again!"; 
    } 
?> 
相关问题