Программирование > PHP
обновление базы данных
for_i_0:
Elfist
$resultk = mysql_query ("SELECT * FROM friends WHERE id=\'$id\'");
$id-эта переменная пустая?
если, да то я так понимаю твой запрос должен возвращать пустую строку.
соответственно ты получаешь пустое значение в атрибут value=""
не вижу ничего не естественного.
Elfist:
нет эта переменная не пуста.
Дело в том,что всё прекрасно работает на локалхосте,но когда я этоже проверяю на хостинге-не работает.Вот и пытаюсь выяснить почему так.
for_i_0:
ну так проверь эту переменную на сервере...
а потом уже будем дальше разбираться.
Если она все же не пустая. Проверь результат своего запроса.
и включи error_reporting(E_ALL).
Elfist:
Сделал так:
<?php include("../config.php");?>
<?php include("../lock.php");
error_reporting (E_ALL);
if (isset($_GET[\'id\'])) {$id = $_GET[\'id\'];}
if (!isset($id))
{
$result = mysql_query ("SELECT id,title FROM data ");
if (!$result)
{
echo "<p>Запрос не может быть выполнен.Пожалуйста сообщите об этом администратору.
<strong>Код ошибки:</strong> </p>";
exit (mysql_error());
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array ($result);
}
else
{
echo "<p>Информация по запросу не может быть извлечена,в таблице нет запесей</p>";
exit ();
}
do
{
printf ("<p><a href=\'ЭТОТ-ЖЕ ФАЙЛ?id=%s\'>%s</a>",$myrow["id"],$myrow["title"]);
}
while ($myrow = mysql_fetch_array ($result));
}
//если существует $id
else
{
if (empty($id))
{
echo "Переменная id пуста";
}
else
{
/* Вытаскиваем из базы все поля и сравниваем переменную $id */
$result = mysql_query ("SELECT * FROM data WHERE id=$id"); /* Приравниваем к переменной $result все поля из таблицы data */
$myrow = mysql_fetch_array($result); /* Выводим массив из переменной $result и приравниваем к переменной $myrow*/
$result2 = mysql_query ("SELECT id,title FROM categories"); /* Для категорий */
$myrow2 = mysql_fetch_array($result2);
$count = mysql_num_rows ($result2);
echo "<h2 align=\'center\'>Редактирование материала</h2>";
echo "<form id=\'form1\' method=\'post\' action=\'update_post.php\'>
<p>Выберите категорию:
<select name=\'cat\' size=\'$count\'>";
do
if ($myrow[\'cat\'] == $myrow2[\'id\'])
{
printf ("<option value=\'%s\' selected>%s</option>",$myrow2[\'id\'],$myrow2[\'title\']);
}
else
{
printf ("<option value=\'%s\'>%s</option>",$myrow2[\'id\'],$myrow2[\'title\']);
}
while ($myrow2 = mysql_fetch_array($result2));
echo "</select></p>";
print <<<HERE
<p>
<label>Введите название материала
<input value="$myrow[title]" type="text" name="title" id="title" />
</label>
</p>
<p>
<label>Введите краткое описние материала
<input value="$myrow[meta_d]" type="text" name="meta_d" id="meta_d" />
</label>
</p>
<p>
<label>Введите ключевые слова
<input value="$myrow[meta_k]" type="text" name="meta_k" id="meta_k" />
</label>
</p>
<p>
<label>Введите дату
<input value="$myrow[date]" type="text" name="date" id="date" />
</label>
</p>
<p>
<label>Введите описание
<textarea name="description" id="description" cols="45" rows="5">$myrow[description]</textarea>
</label>
</p>
<p>
<label>Введите полный текст материала
<textarea name="text" id="text" cols="45" rows="5">$myrow[text]</textarea>
</label>
</p>
<p>
<label>Введите ваше имя
<input value="$myrow[author]" type="text" name="author" id="author" />
</label>
</p>
<input name="id" type="hidden" value="$myrow[id]" /> <!--Прячем поле которое передаёт идентификатор-->
<p>
<label>
<input type="submit" name="submit" id="submit" value="Изменить данные" />
</label>
</p>
</form>
HERE;
}
}
?>
Всё работает!!!Спасибо за то,что уделил внимание,буду заходить к вам по чаще.
Навигация
Перейти к полной версии