Файл index.php
<form action="reg.php" method="post">
<div align="center">
<input type="text" name="reg" value="" maxlength="13">
<br>
<br>
<input name="submit" type=submit class="style4" value="РЕГИСТРАЦИЯ">
</div>
</form>
Файл reg.php
<?php
$db=mysql_connect(HostName,UserName,Password) or die("no connect");
mysql_select_db(DBName,$db) or die("no select");
$quer = "INSERT INTO `wmr` SET `wm` = '$reg'";
$resultat = mysql_query($quer) or die(mysql_error() ."<br/>". $quer);
mysql_close($db);
?>
Подскажите пожайлуста как сделать что бы не вводились второй раз одинаковые данные.
Спустя 8 минут, 40 секунд (23.03.2010 - 14:25) Семён написал(а):
Перед INSERT сделать SELECT на предмет данных.
Например регистрация по email.
Делаешь SELECT если кол-во значений больше 0 => нельзя делать INSERT => выводим ошибку
Например регистрация по email.
Делаешь SELECT если кол-во значений больше 0 => нельзя делать INSERT => выводим ошибку
Спустя 2 минуты, 21 секунда (23.03.2010 - 14:27) copchic написал(а):
А как конкретно если мне нужно проверить девятизначный номер?
Спустя 4 минуты, 10 секунд (23.03.2010 - 14:31) Gabriel написал(а):
copchic
ну наверное где-то так.
$chek_num = mysql_query("SELECT что-то FROM таблица WHERE поле с номером = 'полученый 9ти значный номер'");
if ( mysql_num_rows( $chek_num ) > 0 ) выводим ошибку;
else идем делать наши дела дальше.
ну наверное где-то так.
Спустя 3 минуты, 59 секунд (23.03.2010 - 14:35) copchic написал(а):
Спасибочки сейчас разберусь
Спустя 13 минут, 6 секунд (23.03.2010 - 14:48) waldicom написал(а):
выставить уникальный индекс
Спустя 3 минуты, 10 секунд (23.03.2010 - 14:52) copchic написал(а):
<?php
$db=mysql_connect(HostName,UserName,Password) or die("no connect");
mysql_select_db(DBName,$db) or die("no select");
$chek_num = mysql_query("SELECT `wm` FROM `wmr` WHERE'$reg'");
if ( mysql_num_rows( $chek_num ) > 1 ) {
echo "Такой № уже есть!";
}
else
$quer = "INSERT INTO `wmr` SET `wm` = '$reg'";
$resultat = mysql_query($quer) or die(mysql_error() ."<br/>". $quer);
mysql_close($db);
?>
Правильно?
Спустя 8 минут, 28 секунд (23.03.2010 - 15:00) copchic написал(а):
Чего-то не арбайтен Где-то ошибка
Спустя 1 минута, 8 секунд (23.03.2010 - 15:01) copchic написал(а):
Вводит № повторно
Спустя 34 минуты, 23 секунды (23.03.2010 - 15:36) DeeKeiD написал(а):
<form action="register.php" method="POST">
<input type="text" name="number">
</form>
$number = $_POST['number'];
$check1 = mysql_num_rows(mysql_query("SELECT * FROM `mydb` WHERE `nomer` = '". mysql_real_escape_string($number) ."'")") or die(mysql_error());
if($check1 > 1)
{
echo 'Ошибка номер '. $number .' уже существует';
}
else
{
// запись в базу
}
Спустя 25 минут, 7 секунд (23.03.2010 - 16:01) Gabriel написал(а):
Цитата (copchic @ 23.03.2010 - 12:00) |
Чего-то не арбайтен Где-то ошибка |
$chek_num = mysql_query("SELECT `wm` FROM `wmr` WHERE'$reg'");
внимательно посмотри на запрос.
ЗЫ. а разве после else кавычки открыть, закрыть ненужно?
Спустя 7 минут, 40 секунд (23.03.2010 - 16:08) copchic написал(а):
Чё-то намудрил
Спустя 57 секунд (23.03.2010 - 16:09) copchic написал(а):
Кавычки нужны
Спустя 29 минут, 2 секунды (23.03.2010 - 16:38) copchic написал(а):
Запрос неправильный, а как правильно?
Спустя 44 минуты, 38 секунд (23.03.2010 - 17:23) copchic написал(а):
Вот поправил но всё равно второй раз пишет данные в базу
посмотрите что не так
<?php
$db=mysql_connect(HostName,UserName,Password) or die("no connect");
mysql_select_db(DBName,$db) or die("no select");
$chek_num = mysql_query("SELECT `wm` FROM `wmr` WHERE `id`='$reg'");
if ( mysql_num_rows( $chek_num ) > 0 ) {
echo 'Ошибка номер '. $reg .' уже существует';;
}
else
{
$quer = "INSERT INTO `wmr` SET `wm` = '$reg'";
$resultat = mysql_query($quer) or die(mysql_error() ."<br/>". $quer);
mysql_close($db);
}
?>
посмотрите что не так
Спустя 7 минут, 28 секунд (23.03.2010 - 17:30) DeeKeiD написал(а):
mysql_connect(HostName,UserName,Password) or die('CANNOT CONNECT');
mysql_select_db(DBName) or die('CANNOT SELECT DB');
# Номер кошелька из формы
$number = $_POST['reg'];
# Запрос на существование номера кошелька в базе
$check1 = mysql_num_rows(mysql_query("SELECT `wm` FROM `wmr` WHERE `wm` = '". mysql_real_escape_string($number) ."'"));
# Если результатов больше 1го выводим ошибку
if($check1 > 1)
{
echo 'Ошибка номер <b>'. $number .'</b> уже существует';
}
# Если результатов меньше одного записываем в базу
else
{
mysql_query("INSERT INTO `wmr` (wm) VALUES ('". mysql_real_escape_string($number) ."')") or die('CANNOT INSERT INTO DB');
}
Спустя 1 минута, 10 секунд (23.03.2010 - 17:32) Gabriel написал(а):
copchic
а ид должно быть равно значению приходящему из формы?
DeeKeiD
зы. если номер целый то тут нужен intval.
а ид должно быть равно значению приходящему из формы?
DeeKeiD
зы. если номер целый то тут нужен intval.
Спустя 28 минут, 20 секунд (23.03.2010 - 18:00) copchic написал(а):
Спасибо всем всё работает вот код может кому пригодится
<?php
$db=mysql_connect(HostName,UserName,Password) or die("no connect");
mysql_select_db(DBName,$db) or die("no select");
$check1 = mysql_num_rows(mysql_query("SELECT `wm` FROM `wmr` WHERE `wm` = '". mysql_real_escape_string($reg) ."'"));
if($check1 > 0)
{
echo 'Ошибка номер <b>'. $reg .'</b> уже существует';
}
else
{
$quer = "INSERT INTO `wmr` SET `wm` = '$reg'";
$resultat = mysql_query($quer) or die(mysql_error() ."<br/>". $quer);
mysql_close($db);
?>
Спустя 31 минута, 34 секунды (23.03.2010 - 18:32) copchic написал(а):
Ещё один вопрос
Как вывести последнее значение поля id?
Как вывести последнее значение поля id?
Спустя 12 минут, 35 секунд (23.03.2010 - 18:44) koala написал(а):
$res = mysql_query ("SELECT * FROM site WHERE 'id' DESC");
Как то так =)
Спустя 9 минут, 2 секунды (23.03.2010 - 18:53) copchic написал(а):
Щас попробую
Спустя 5 минут, 33 секунды (23.03.2010 - 18:59) copchic написал(а):
Не работает что-то не так
Спустя 12 минут, 55 секунд (23.03.2010 - 19:12) koala написал(а):
$total_base_number = mysql_query("SELECT id FROM site",$db) or die ("Error");
$result=mysql_fetch_row($total_base_number);
echo 'В базе: '. $result[0].".";
Я так выводил последний id. Подставишь свои переменные.
Спустя 14 минут, 34 секунды (23.03.2010 - 19:26) Gabriel написал(а):
copchic
лимит добавь и будеш получать последний ид из базы
$res = mysql_query ("SELECT id FROM table ORDER BY DESC");
лимит добавь и будеш получать последний ид из базы
Спустя 19 минут, 12 секунд (23.03.2010 - 19:45) SipFer написал(а):
если $reg - строка, то ее нужно за экранировать. (mysql_escape_string). тебе выше написали
Спустя 2 минуты, 33 секунды (23.03.2010 - 19:48) copchic написал(а):
Все понятно спасибо
_____________
Я знаю, что ничего не знаю...