- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
<? require 'config/bd.php'; ?>
<?
if($_POST["title"]){
$id = intval($_POST["id"]);
$title = intval($_POST["title"]);
$num = mysql_num_rows(mysql_query("SELECT id FROM banner WHERE id = '".$id."'"));
if($num>0){
mysql_query("UPDATE banner SET url = '$url', img = '$img', title = '$title', day = '$day', active = '".$_POST["active"]."', active_to = '$active_to' WHERE id = '".$id."'");
?>
<div class="color='red'">Баннер отредактирован</div>
<?
}
}
if($_POST["id"]){
$id = intval($_POST["id"]);
$title = intval($_POST["title"]);
$num = mysql_num_rows(mysql_query("SELECT id FROM banner WHERE id = '".$id."'"));
if($num>0){
$row = mysql_fetch_array(mysql_query("SELECT * FROM banner WHERE id = '".$id."'"));
?>
<form method="post" action="">
<strong>ID:</strong> <?=$row['id'];?><br>
<strong>Ссылка перехода:</strong> <?=$row['url'];?><br>
<strong>Ссылка на баннер:</strong> <?=$row['img'];?><br>
<strong>Заголовок:</strong> <?=$row['title'];?><br>
<strong>Дней:</strong> <input type="text" size="5" name="id" value="<?=$row['day'];?>">
<strong>Активен?:</strong><select name="active"><option value="1" <? if($row["active"]==1){?>selected="selected"<? }?>>Да</option><option value="0" <? if($row["active"]==0){?>selected="selected"<? }?>>Нет</option></select><br>
<strong>Активен до:</strong> <input type="text" size="10" name="id" value="<?=$row['active_to'];?>">
<input type="hidden" name="id" value="<?=$row['id'];?>">
<input type="submit" value="Сохранить">
</form>
<?
}else{
?>
Баннер не найден
<?
}
}?>
<form method="post" action="">
Введите ID баннера: <input type="text" name="id">
<input type="submit" value="Поиск">
</form>
Что здесь не так? Первую часть поиск по ID проходит! Дале выскакивает форма редактирования, ввел данные нажимаю Сохранить но ничего не происходит! Просто игнор! Исправьте пж!
2. Отделение вёрстки от логики.
3. По возможности использовать подготовленные выражения (prepared statements) в SQL.
Попытаемся разобрать, что тут происходит:
Обе формы делают запрос к тому же самому URL, на котором находятся. Обе формы отправляют единственный параметр id (форма сохранения отправляет id, полученный из базы, который в случае уникального индекса совпадает с ранее полученным).
Сохранение будет происходить, только если кто-то отправит параметр title.
Вывод: автор сам не знает, что хочет сделать.
А то так рак мозга не долго получить
этот код надо обоссать и сжечь
а тебе нужно никогда (никогда!!!!) даже не пытаться стать программистом
1) мешать HTML, логику и SQL
2) завязывать код на худшую из БД
3) делать SQL инъекции
какой язык кроме ПХП мог научить этому сразу?
> БД
JS конечно
а плохо что к ней привязали
Что значит "привязали"? Не пишут запросы через 2 слоя абстрагирования от БД?
Заюзали устаревшие mysql_* функции, которые даже подготовленные запросы не умеют.
З.Ы. `Ну` `хоть` `не` `волосатый` `код`, `и` `то` `cчастье`.
Узнаю почерк адептов Жопова и пРуссакова.