"文件意外结束"错误:我错过了什么?

时间:2014-06-20 06:02:49

标签: php

好的....感谢所有插话的人 - 你就是我爱这个网站的原因。错误是我用不同的名称上传了错误的文件。但是 - 第2部分 - 当我摆脱意外的结束错误时,我现在也得到了7行9列INPUT字段(文本框说 "

<?php
$con = mysql_connect("localhost","XXXX","XXXX");
if (!$con){
die("can not connect: " . mysql_error());
}
mysql_select_db("i541280_wp1",$con);


if(isset($_POST['update'])){
$UpdateQuery = "UPDATE wp_usermeta SET bio='$_POST[bioupdate]'WHERE
author_bio='$_POST[hidden]'";
mysql_query($UpdateQuery, $con);

};

$sql = "SELECT * FROM wp_usermeta";
$myData = mysql_query($sql,$con);
while($record = mysql_fetch_array($myData)){
echo "<form action=bio.php method=post>";
echo "<input type=textarea name=bio value=" . $record['bio'];
echo "<input type=hidden name=hidden value=" . $record['bio'];
echo "<input type=submit name=update value=update";
echo "</form>";
}
mysql_close($con);
?>

3 个答案:

答案 0 :(得分:0)

这是您的查询:

$UpdateQuery = "UPDATE wp_usermeta SET bio='$_POST[bioupdate]'WHERE author_bio='$_POST[hidden]'";

应该是这样;请注意$_POST键的正确单引号以及WHERE之前的空格。我还将其格式化为清晰度/可读性,每行一个项目:

$UpdateQuery = "UPDATE wp_usermeta"
             . " SET bio='" . $_POST['bioupdate'] . "'"
             . " WHERE author_bio='" . $_POST['hidden'] . "'"
             ;

另外,这是错误的:

if(isset($_POST['update'])){
    // Removing code for clarity.
};

删除末尾的额外;,使其如下:

if(isset($_POST['update'])){
    // Removing code for clarity.
}

答案 1 :(得分:0)

\n字符串中的$UpdateQuery可能导致此问题:

你的代码

$UpdateQuery = "UPDATE wp_usermeta SET bio='$_POST[bioupdate]'WHERE
author_bio='$_POST[hidden]'";

更好:

$UpdateQuery = "UPDATE wp_usermeta SET bio='" . 
                  $_POST[bioupdate] . 
                  "'WHERE author_bio='$_POST[hidden]'";

多行字符串取决于您拥有的PHP版本。

答案 2 :(得分:0)

删除;来自If条件 并更改查询

$UpdateQuery = "UPDATE wp_usermeta SET bio='".$_POST[bioupdate]."'WHERE
author_bio='".$_POST[hidden]."'";