Скрипт должен выбирать одно из значений в БД, подходящих под параметры и выводить его на экран. Проблема возникает с ценой. Когда $money начинается на цифру, которая меньше цифры, с которой начинается цена, то ничего не происходит
Пример: вводим значение "1000", в БД цена "300". Он не выведет ничего
А если ввести "300", "400", "4000" - то все в порядке
Имеется форма
<input type="submit" value="Чем мне заняться?" name="button">
<input type="text" name="money" maxlength=6 value="0" onfocus="this.value=''" onblur="if (this.value == '') {this.value = '0';}">
И её обработчик
$time = date("H:i:s");
$time_now = date("H:i");
$money = $_POST['money'];
echo "Сейчас " . $time_now . "<br>";
if ($money=="")
{
$money = "0";
}
echo "У вас есть " . $money . " рублей";
//Выбираем из бд данные, подходящие по всем параметрам
$result = mysql_query("SELECT * FROM Prices WHERE day_of_week = '$day_of_week' AND begin_time <= '$time' AND end_time > '$time' AND price <= '$money' ORDER BY rand() LIMIT 1");
while ($myrow = mysql_fetch_assoc($result))
{
$id_place = $myrow['id_place'];
$begin_time = $myrow['begin_time'];
$end_time = $myrow['end_time'];
$price = $myrow['price'];
$comment = $myrow['comment'];
$res1 = mysql_query("SELECT * FROM Places WHERE id_place = '$id_place'");
$mr1 = mysql_fetch_assoc($res1);
$name = $mr1['name'];
echo $name . ' ' . $comment . '<br>' . ' ' . $price . ' Рублей<br>';
}
?>
_____________
Идеальной защиты не существует...