我想在这里做一些非常简单的事情。我想要做的就是更新MySQL中的信息 以下是表单的代码。
<?php
$host=""; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name=""; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// get value of id that sent from address bar
$dj=$_GET['dj'];
// Retrieve data from database
$sql="SELECT * FROM $tbl_name WHERE dj='$dj'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
?>
<table width="400" border="0" cellspacing="1" cellpadding="0">
<tr>
<form name="form1" method="post" action="update_ac.php">
<td>
<table width="100%" border="0" cellspacing="1" cellpadding="0">
<tr>
<td> </td>
<td colspan="3"><strong>Update The information for the Now PlayingProgram.</strong>
</td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"> </td>
<td align="center"> </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"><strong>Name</strong></td>
<td align="center"><strong>Email</strong></td>
<td align="center"><strong>Email2</strong></td>
</tr>
<tr>
<td> </td>
<td align="center">
<input name="name" type="text" id="name" value="<?php echo $rows['name']; ?>">
</td>
<td align="center">
<input name="email" type="text" id="email" value="<?php echo $rows['email']; ?>" size="15">
</td>
<td>
<input name="email2" type="text" id="email2" value="<?php echo $rows['email2']; ?>" size="15">
</td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"><strong>Twitter</strong></td>
<td align="center"><strong>Twitter2</strong></td>
<td align="center"><strong>Avatar</strong></td>
</tr>
<tr>
<td> </td>
<td align="center">
<input name="twitter" type="text" id="twitter" value="<?php echo $rows['twitter']; ?>">
</td>
<td align="center">
<input name="twitter2" type="text" id="twitter2" value="<?php echo $rows['twitter2']; ?>" size="15">
</td>
<td>
<input name="avatar" type="text" id="avatar" value="<?php echo $rows['avatar']; ?>" size="15">
</td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"><strong>Facebook</strong></td>
<td align="center"><strong>Facebook2</strong></td>
<td align="center"><strong>Type</strong></td>
</tr>
<tr>
<td> </td>
<td align="center">
<input name="facebook" type="text" id="facebook" value="<?php echo $rows['facebook']; ?>">
</td>
<td align="center">
<input name="facebook2" type="text" id="facebook2" value="<?php echo $rows['facebook2']; ?>" size="15">
</td>
<td>
<input name="type" type="text" id="type" value="<?php echo $rows['type']; ?>" size="15">
</td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"><strong>Alias1</strong></td>
<td align="center"><strong>Alias2</strong></td>
<td align="center"><strong>Alias3</strong></td>
</tr>
<tr>
<td> </td>
<td align="center">
<input name="alias1" type="text" id="alias1" value="<?php echo $rows['alias1']; ?>">
</td>
<td align="center">
<input name="alias2" type="text" id="alias2" value="<?php echo $rows['alias2']; ?>" size="15">
</td>
<td>
<input name="alias3" type="text" id="alias3" value="<?php echo $rows['alias3']; ?>" size="15">
</td>
</tr>
<tr>
<td align="center"> </td>
<td colspan="3" align="center"><strong>Request Line</strong></td>
</tr>
<tr>
<td> </td>
<td colspan="3" align="center">
<input name="address" type="text" id="address" value="<?php echo $rows['address']; ?>" size="65">
</td>
</tr>
<tr>
<td> </td>
<td>
<input name="dj" type="hidden" id="dj" value="<?php echo $rows['dj']; ?>">
</td>
<td align="center">
<input type="submit" name="Submit" value="Submit">
</td>
<td> </td>
</tr>
</table>
</td>
</form>
</tr>
</table>
<?php
// close connection
mysql_close();
?>
现在我想要做的是编辑当前在表单中显示的数据库中的信息。 (表单显示mysql中的正确信息) 如果我想改变让我们说电子邮件2我会在该字段中这样做,然后单击提交。我的问题是,当我这样做时,我得到的只是错误。
让我们来看看我的update_ac.php 代码如下:
<?php
$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name=""; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// update data in mysql database
$sql="UPDATE currentdj SET name='$name',
email='$email',
email2='$email2',
twitter='$twitter',
twitter2='$twitter2',
avatar='$avatar',
facebook='$facebook',
facebook2='$facebook2',
type='$type',
alias1='$alias1',
alias2='$alias2',
alias3='$alias3',
address='$address'
WHERE dj='$dj'";
$result=mysql_query($sql);
// if successfully updated.
if($result){
echo "Successful";
echo "<BR>";
echo "<a href='list_records.php'>View result</a>";
}
else {
echo "ERROR";
}
?>
我想知道我是否只是在这里有语法甚至是拼写问题! 任何帮助将不胜感激。
谢谢!
答案 0 :(得分:2)
在UPDATE
查询中,email
字段email='$email,
"UPDATE currentdj SET name='$name',
email='$email', //Add THE MISSING SINGLE QUOTE HERE
email2='$email2',
答案 1 :(得分:0)
在,
(address='$address', WHERE dj='$dj'";
)不应该来之前尝试此代码
$sql="UPDATE currentdj SET name='$name',
email='$email',
email2='$email2',
twitter='$twitter',
twitter2='$twitter2',
avatar='$avatar',
facebook='$facebook',
facebook2='$facebook2',
type='$type',
alias1='$alias1',
alias2='$alias2',
alias3='$alias3',
address='$address'
WHERE dj='$dj'";
答案 2 :(得分:0)
在update_ac.php文件中,您尚未使用$_POST[]
变量从表单中检索值。因此,数据库中不会插入任何值,从而导致错误。
将此代码放在更新查询语句之前,其中包含$ sql =“UPDATE .....
$email=$_POST['email'];
$email2=$_POST['email2'];
$twitter=$_POST['twitter'];
依旧......