可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in select
Warning: mysql_fetch_* expects parameter 1 to be resource, boolean given error
我收到了这个警告
Warning: trim() expects parameter 1 to be string, array given in ..
这是我的修剪线。 完整代码用于在字段为空时发送错误。但是,出现此错误表示每个字段都是空的,但只有“本机”字段才是必需的,因此这是我的第二个问题。 谢谢你的帮助!
session_start();
$err = array();
$user_id = intval($_SESSION['user_id']);
// otherwise
if (isset($_POST['doLanguage'])) {
$link = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die("Couldn't make connection.");
// check if current user is banned
$the_query = sprintf("SELECT COUNT(*) FROM users WHERE `banned` = '0' AND `id` =
'%d'", $user_id);
$result = mysql_query($the_query, $link);
$user_check = mysql_num_rows($result);
// user is ok
if ($user_check > 0) {
// check for empty fields
foreach ($_POST as $key => $val) {
$value = trim($val);
if (empty($value)) {
$err[] = "ERROR - $key is required";
}
}
// no errors
if(empty($err)) {
for($i = 0; $i < count($_POST["other"]); $i++)
$native = mysql_real_escape_string($_POST['native'][$i]);
$other = mysql_real_escape_string($_POST['other'][$i]);
$other_list = mysql_real_escape_string($_POST['other_list'][$i]);
$other_read = mysql_real_escape_string($_POST['other_read'][$i]);
$other_spokint = mysql_real_escape_string($_POST['other_spokint'][$i]);
$other_spokprod = mysql_real_escape_string($_POST['other_spokprod'][$i]);
$other_writ = mysql_real_escape_string($_POST['other_writ'][$i]);
// insert into the database
$the_query = sprintf("INSERT INTO `language`
(`user_id`,`native`,`other`,`other_list`,`other_read`, `other_spokint`
,`other_spokprod`,`other_writ` ) VALUES ('%d','%s','%s','%s','%s','%s','%s','%s')",
$user_id,$native,$other,$other_list,$other_read,
$other_spokint,$other_spokprod,$other_writ);
// query is ok?
if (mysql_query($the_query, $link) ){
// redirect to user profile
header('Location: myaccount.php?id=' . $user_id);
}
}
}
}
答案 0 :(得分:1)
// check for empty fields
foreach ($_POST as $key => $val) {
while (is_array($val))
$val = reset($val);
if (is_string($val))
$val = trim($val);
if (empty($val)) {
$err[] = "ERROR - $key is required";
}
}