2011-09-15 71 views
0

我想用MySQL数据库中的数据填充文本字段,但我的代码似乎不工作。用PHP从Mysql数据库填充文本字段

任何帮助将不胜感激。

继承人的代码:

<?php include ("../config.php"); 

// Connect to server and select database. 
mysql_select_db($db, $con); 

// get value of id that sent from address bar 
$id = $_GET['ID']; 


// Retrieve data from database 
$sql="SELECT * FROM members WHERE id='$id'"; 
$result=mysql_query($sql); 

echo '<form name="Edit" method="post" action="update.php"> 

<table width="400" border="0" cellspacing="1" cellpadding="0"> 
<tr> 
<td align="center"><strong>Name:</strong></td> 
<td align="center"><strong>Contact:</strong></td> 
<td align="center"><strong>Division:</strong></td> 
<td align="center"><strong>Rank:</strong></td> 
</tr>'; 
      while ($row = mysql_fetch_assoc($result)) 
      { 
      //we will echo these into the proper fields 

     echo '<tr>'; 
     echo '<td align="center"><input name="Name" type="text" id="Name" value="'; echo $row['Name']; echo '"></td>'; 
     echo '<td align="center"><input name="Contact" type="text" id="Contact" value="'; echo $row["Contact"]; echo'" size="15"></td>'; 
     echo'<td> 
     <select name="Divison"> 
     <option value="L4D2">L4D2</option> 
     <option value="CSS">CSS</option> 
     <option value="GMOD">GMOD</option> 
     <option value="TF2">TF2</option> 
     </select> 
     </td> 
     <td> 
     <select name="Rank"> 
     <option value="Division Leader">Division Leader</option> 
     <option value="Admin">Administrator</option> 
     <option value="Member">Member</option> 
     </select> 
     </td> 
     </tr>'; 


echo '<tr>'; 
     echo '<td align="center"><input type="submit" name="Submit" value="Submit"></td> 
     </tr> 
</table> 
</td> 
</form>'; 
} 
echo ' 
</tr> 
</table> 
</body> 
</html>'; 


// close connection 
mysql_close(); 

?> 

回答

1

编辑我的答案具有完全修复:

<?php include ("../config.php"); 

// Connect to server and select database. 
mysql_select_db($db, $con); 

// get value of id that sent from address bar 
$id = $_GET['ID']; 

// Retrieve data from database 
$sql="SELECT * FROM members WHERE id='$id'"; 
$result=mysql_query($sql); 

echo '<form name="Edit" method="post" action="update.php"> 
      <table width="400" border="0" cellspacing="1" cellpadding="0"> 
       <tr> 
        <td align="center"><strong>Name:</strong></td> 
        <td align="center"><strong>Contact:</strong></td> 
        <td align="center"><strong>Division:</strong></td> 
        <td align="center"><strong>Rank:</strong></td> 
       </tr>'; 
while ($row = mysql_fetch_assoc($result)) { 
    //we will echo these into the proper fields 

    echo '<tr> 
       <td align="center"><input name="Name" type="text" id="Name" value="'.$row['Name'].'"></td> 
       <td align="center"><input name="Contact" type="text" id="Contact" value="'.$row["Contact"].'" size="15"></td> 
       <td> 
        <select name="Divison"> 
         <option value="L4D2">L4D2</option> 
         <option value="CSS">CSS</option> 
         <option value="GMOD">GMOD</option> 
         <option value="TF2">TF2</option> 
        </select> 
       </td> 
       <td> 
        <select name="Rank"> 
         <option value="Division Leader">Division Leader</option> 
         <option value="Admin">Administrator</option> 
         <option value="Member">Member</option> 
        </select> 
       </td> 
      </tr>'; 
} 
echo  '<tr> 
       <td colspan="4" align="center"><input type="submit" name="Submit" value="Submit"></td> 
      </tr> 
      </table> 
     </form>'; 

// close connection 
mysql_close(); 
?> 

现在换成这个和答辩全编码...?

+0

value =“'。$ row ['Name']。'”这不适用于我,我试图在我的结果列中填充文本字段中的值,这是我做的

名字:

0

只是一个猜测,但我认为你的数据库中的列名将全部为小写。但在你的PHP你有$行[“联系”]。我觉得应该是$行[ “接触”]

+0

谢谢,但我仔细检查过这些情况。 – Puzzledplane

0

此代码:

$sql="SELECT * FROM members WHERE id='$id'"; 

应该是这样的

$sql="SELECT * FROM members WHERE id='{$id}'"; 

还可以使用

$result=mysql_query($sql) or die(mysql_error()); 

为了调试的目的。

删除mysql_close(),它应该工作

+0

谢谢,但这并没有解决问题。 – Puzzledplane

+0

谢谢。添加了这些语法。 – Puzzledplane

+0

删除mysql_close() – rahul

0

请确保您使用查询字符串与像example.com?ID=1合法的ID。如果您发布表单并且表单的发布方法是发布,则应该使用$ _POST ['ID']而不是$ _GET ['ID']。

+0

谢谢。尝试将其更改为POST并仍然无效。它也是一个合法的ID。 – Puzzledplane

0

从先前的评论,在URL中的id是小写变化$ _GET [ 'ID']到$ _GET [ '身份证']

林我允许这样做吗?保持其他人的问题从阅读所有意见

本网站的新手,谢谢!

相关问题