Golishev
Новичок
Скрипт встает при определении существования данных в MySQL
Подскажите в чем ошибка, не хочет работать скрипт
если в БД есть запись с необходимым id_acc то все ок запись обновляется. Но если записи нет то новая
запись не вносится. При этом ни каких ошибок не показывает. Если закоментировать всё кроме вставки
новой записи запись вставляется. Пробовал вызвать вывод ошибки (mysql_error()) по сле каждой операции ничего не выводит.
Суть скрипта заключается в следующем: 1. зашёл посетитель определяем его IP, браузер, систему. 2. Поверяем в базе имеется ли по нему запись если есть обновляем если нет добавляем. При этом поле id_acc не должно быть уникальным (для дальнейших дороботок).
Используется сборка apache2.2.10+php5.2.6+mysql5.0.67+phpmyadmin3.0.1.1
Сразу второй вопрос: при попытки записи в поле, ограниченное к примеру 2 символами (char(2)), данных с большим количеством символом (3-5-10), как должен повести себя mysql, обрезать до 2 символов и вставить либо выдать ошибку и вставку не проводить. Дело в том что у меня в локале ругается и выкидывает а на хостинге обрезает и вставляет.
Подскажите в чем ошибка, не хочет работать скрипт
PHP:
$res = mysql_query ("SELECT id FROM dostup WHERE id_acc='$id'",$db);
if (!$res) {
mysql_query ("INSERT INTO dostup (ip,putdate,id_acc,browsers,systems) VALUES ('$ip', NOW( ) , '$id', '$browser', '$os')"); }
else { $myrow_dostup = mysql_fetch_array ($res);
$id_str = $myrow_dostup ["id"];
mysql_query ("UPDATE dostup SET ip='$ip', putdate=NOW(), id_acc='$id', browsers='$browser', systems='$os' WHERE id='$id_str'"); }
запись не вносится. При этом ни каких ошибок не показывает. Если закоментировать всё кроме вставки
новой записи запись вставляется. Пробовал вызвать вывод ошибки (mysql_error()) по сле каждой операции ничего не выводит.
Суть скрипта заключается в следующем: 1. зашёл посетитель определяем его IP, браузер, систему. 2. Поверяем в базе имеется ли по нему запись если есть обновляем если нет добавляем. При этом поле id_acc не должно быть уникальным (для дальнейших дороботок).
Используется сборка apache2.2.10+php5.2.6+mysql5.0.67+phpmyadmin3.0.1.1
Сразу второй вопрос: при попытки записи в поле, ограниченное к примеру 2 символами (char(2)), данных с большим количеством символом (3-5-10), как должен повести себя mysql, обрезать до 2 символов и вставить либо выдать ошибку и вставку не проводить. Дело в том что у меня в локале ругается и выкидывает а на хостинге обрезает и вставляет.