Заполнение текстового поля данными из базы данных Mysql с помощью PHP - PullRequest
0 голосов
/ 15 сентября 2011

Я пытаюсь заполнить текстовое поле данными из базы данных 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();

?>

Ответы [ 5 ]

1 голос
/ 15 сентября 2011

отредактировал мой ответ с полными исправлениями:

<?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 голосов
/ 16 сентября 2011

Исходя из предыдущих комментариев, идентификатор в вашем URL-адресе должен быть в нижнем регистре и заменить $ _GET ['ID'] на $ _GET ['id']

Разрешено ли мне это делать? Помогает другим людям с проблемой читать все комментарии

Новое на этом сайте, спасибо!

0 голосов
/ 15 сентября 2011

Убедитесь, что вы используете строку запроса с допустимым идентификатором, например example.com?ID=1.Если вы публикуете форму, а метод публикации для этой формы - post, вы должны использовать $ _POST ['ID'] вместо $ _GET ['ID'].

0 голосов
/ 15 сентября 2011

Этот код:

$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 голосов
/ 15 сентября 2011

Просто предположение, но я думаю, что ваши имена столбцов в БД будут строчными.Но в вашем php у вас есть $ row ["Contact"].Я думаю, что это должно быть $ row ["contact"]

...