Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP和MYSQL:当我编辑和更新数据库时,只有第一列会更新_Php_Mysql_Html - Fatal编程技术网

PHP和MYSQL:当我编辑和更新数据库时,只有第一列会更新

PHP和MYSQL:当我编辑和更新数据库时,只有第一列会更新,php,mysql,html,Php,Mysql,Html,我在mysql中有以下列: firstname, lastname,age,email,phone 当我更新时,说我有以下内容: John Doe 23 eee@yahoo.com 5555555555 但是,当我想编辑任何字段并将其提交给: Mike 0 就这样。有什么想法吗 这是我的edit.php <html> <body> <table> <?php include 'db.inc.php'; // Connect to MySQL DB

我在mysql中有以下列:

firstname, lastname,age,email,phone
当我更新时,说我有以下内容:

John Doe 23 eee@yahoo.com 5555555555
但是,当我想编辑任何字段并将其提交给:

Mike 0 
就这样。有什么想法吗

这是我的edit.php

<html>
<body>
<table>
<?php
include 'db.inc.php';
// Connect to MySQL DBMS
if (!($connect = @ mysql_connect($hostName, $username,
  $password))){
  showerror();
 }
// Use the food database
if (!mysql_select_db($databaseName, $connect)){
  showerror();

}
$uid=$_GET[id];
$query=mysql_query("SELECT * FROM contact WHERE id='$uid'");
$row=mysql_fetch_array($query); 

?>
<form method ="post" action="update.php">
<table>
<tr>
<td><input type="hidden" name="id" value="<?php echo "$row[id]"?>"></td>
</tr>

<tr>
<td>First Name:</td>
<td><input type="text" name="ud_firstname" value="<?php echo          "$row[ud_firstname]"?>"></td>
</tr>

<tr>
<td>Last Name:</td>
<td><input type="text" name="ud_lastname" value="<?php echo"$row[ud_lastname]"?>"></td>
</tr>

<tr>
<td>Age:</td>
<td><input type="text" name="age" value="<?php echo"$row[ud_age]"?>"></td>
</tr>

<tr>
<td>Email:</td>
<td><input type="text" name="email" value="<?php echo "$row[ud_email]" ?>">    </td>
</tr>

<tr>
<td>Phone Number:</td>
<td><input type="text" name="phone" value="<?php echo "$row[ud_phone]" ?>">  </td>
</tr>
<input type = "submit">
</table>
</form>
</body>
</html>


update.php
中替换以下内容:

 $ud_age = mysql_real_escape_string($_POST["age"]);
 $ud_email = mysql_real_escape_string($_POST["email"]);
 $ud_phone = mysql_real_escape_string($_POST["phone"]);

以下是您的表格:

<tr>
<td>Age:</td>
<td><input type="text" name="ud_age" value="<?php echo"$row[ud_age]"?>"></td>
</tr>

<tr>
<td>Email:</td>
<td><input type="text" name="ud_email" value="<?php echo "$row[ud_email]" ?>">    </td>
</tr>

<tr>
<td>Phone Number:</td>
<td><input type="text" name="ud_phone" value="<?php echo "$row[ud_phone]" ?>">  </td>
</tr>

年龄:

我不太清楚你所描述的问题。是否更新了错误的记录?是否将正确的记录更新为错误的值?还有什么?您的表单是否发布了正确的值?放置
print\u r($\u POST);退出()
update.php
中的某个地方。它是正确的记录和正确的值,但它只更新第一个值,即firstname,然后将所有其他值设置为null。
name=“age”
!=<代码>$\u POST[“ud\u age”]
POST
的索引需要与元素的名称匹配。与
电子邮件
电话
相同。如果error reporting为on.LePhleg,您应该会收到未定义的索引通知-我这样做了,现在它显示了名字和姓氏,但没有显示其他字段。
<tr>
<td>Age:</td>
<td><input type="text" name="ud_age" value="<?php echo"$row[ud_age]"?>"></td>
</tr>

<tr>
<td>Email:</td>
<td><input type="text" name="ud_email" value="<?php echo "$row[ud_email]" ?>">    </td>
</tr>

<tr>
<td>Phone Number:</td>
<td><input type="text" name="ud_phone" value="<?php echo "$row[ud_phone]" ?>">  </td>
</tr>