Вопрос по условию IF. Подскажите .

Статус
В этой теме нельзя размещать новые ответы.

асс

Мой дом здесь!
Регистрация
13 Окт 2006
Сообщения
762
Реакции
230
Ребята возник такой вопросс.
Как сделать условие в php скрипте чтобы парсер не добавлял снова одну и ту же новость.
Тоесть чтоб небыло дублей
есть статья . пишем в базу номер этой статьи код md5
прис ледующей проверке проверяем есть ли такая статья или нет. И желательно чтоб проверять статью за последний день. Иначе проверять всю базу будет не нужно так как проверка будет идти на последний день
Я так понимаю пишем конструкцию типа

Пример
статья страя Название статьи в переменной
PHP:
$new_name="кот матроскин";//это новая статья
dbname="Реки и поля"; //это старая статья которая есть с базе
//Мы видим что статьи  разные. Значит условие не равно  .
//И так
if($new_name!=dbname)//если  условие не равно то   сначит название статьи  новое

Или есть вариант проще?
И еще кто нить работал с слайдом?
Хочу сделать модуль добавлять новости
 
PHP:
if($new_name==dbname){ Повтор } else { ok }
 
PHP:
if($new_name==dbname){ Повтор } else { ok }
ewg777
если $new_name будет равен dbname
то попадет копия одинакового сообщения в базу.

Мне нужно чтоб они не были одинаковы
по этому надо $new_name не равно dbname
Если они не одинаковы значит условие истинно.
Если одинаковы то ложь
 
асс

ewg777 все верно описал. Если нашлось совпадение, значит это повтор и ведем себя как надо при повторе, то есть просто не добавляем эту статью.
Вот как ты хочешь, только это одно и то же
PHP:
if($new_name==dbname){ return true} else { return false }
 
ewg777
если $new_name будет равен dbname
то попадет копия одинакового сообщения в базу.

Мне нужно чтоб они не были одинаковы
по этому надо $new_name не равно dbname
Если они не одинаковы значит условие истинно.
Если одинаковы то ложь
Объясню для эстонцев.
PHP:
if($new_name==dbname){ echo "Новость уже существует"; } else { add(); }
*Где add() - функция добавления ститьи в базу.
Спасибо - кнопкой. ;)
 
:p

Объясните пожалуйста уже пол дня туплю.
Как сделать запрос

если в таблице поле $title имеет заголовок

$catid = "4"; //категория
$title = "Заголовок";
$textshort= "короткая новость" ;
$textmore ="полная новость" ;

$query =
"INSERT INTO $userstable
VALUES ('', 4, 1223214780, 0, 0, '', '$title', '$textshort', '$textmore', '', '', '', '', '', 'right','', '', 0, 'yes', 'all', 0, 0)";
mysql_query($query) or die(mysql_error());
echo "title дубль записи.";
mysql_close();

ничего не могу придумать.



Сдела поле уникальныйм. теперь вопрос



Акак добавить проверку еще на новости за последние 24 часа.

Чтоб не проверять вчерашние новости. Ато если в базе их будет миллион то это будет нагрузка
 
Так держи в базе данных поле со временем Выбирай перед парингом последние новости и сверяй только с ними

зы: ну и вопросы у вас:)
 
Объясню для эстонцев.
PHP:
if($new_name==dbname){ echo "Новость уже существует"; } else { add(); }
*Где add() - функция добавления ститьи в базу.
Спасибо - кнопкой. ;)

Собственно разницы нет так

PHP:
if($new_name!=dbname){ echo "add()"; } else { Новость уже существует }

разница только в том где стоять будет условие add
до esle или после.
Так что и то что я показал идентично вашему

Просто вы мне показали на оборот.
Хотя как мне кажется
выполняется первый до else запрос
 
Собственно разницы нет так

PHP:
if($new_name!=dbname){ echo "add()"; } else { Новость уже существует }

разница только в том где стоять будет условие add
до esle или после.
Так что и то что я показал идентично вашему

Просто вы мне показали на оборот.
Хотя как мне кажется
выполняется первый до else запрос
Тему можно закрывать.
Либо человек невминяемый, либо посты набивает. Вам написали правильный ответ в первом ответе, а Вы тут флуд открываете.
 
Тему можно закрывать.
Либо человек невминяемый, либо посты набивает. Вам написали правильный ответ в первом ответе, а Вы тут флуд открываете.

Ладно пусть будет по вашему. Смысла доказывать что то не вижу. Да и вообще тема называется
PHP для начинающих
А посты набивать мне зачем ?.
ewg777 Объясните от чего вы так кипятитесь Я вас Обидел или что?.

если вы не можете понять что
Любая из этих строчек выполнит одно и тоже.

if($new_name==$dbname){echo "Новость уже существует";} else {echo"Добавляем новость"; }
if($new_name!=$dbname){echo"Добавляем новость";} else {echo "Новость уже существует";}

Так что давайте не будем Переходить на оскорбления.
Если вам так сложно было сказать по теме.
Пройдите пожалуйста мимо.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху