След един час нищене разгадах логиката на Иван.
$id е число вследствие събмит на формата от скрито поле name="edit_id" value="'.$id.'".
SELECT * FROM group_cat WHERE name="'.$name.'" AND group_cat_id!="'.$id.'"' е условието
Случай на създаване на нова "Групи форуми" наблюдаваме следни отговори:
$id = 0
mysql_num_rows($rs) = 0
масив от mysql_fetch_assoc($rs) е празен, защото условието не връща нищо. Няма намерено име И неговото group_cat_id да не е равно на $id. Това кара кода да изпълнява заявка за въвеждане на нова група.
Опит за повторение на горното. Имаме създадена група и се опитваме да я пресъздадем. Например php с group_cat_id = 2. Наблюдаваме опита:
$id = 0
Отново е 0, защото не минава условието на $_GET за създаване на скрито поле в формата.
mysql_num_rows($rs) = 1 вече, защото условието връща един намерен отговор: php = php AND 2!=0, а щом е така влизат в сила IF-вете и логично съобщение за името съществува.
Опит за обновяване.
Избирам произволна група, да речем php с id = 2. Пиша обновленията и наблюдавам. Tогава:
$id = 2
mysql_num_rows($rs) = 0
Връща нула, защото условието не минава php = php AND 2!=2
Това кара кода да се подчини на поредното условие if($id>0). Проверката за съществуване на името не минава и настъпва обновяването на същото име според условието на заявката - UPDATE group_cat SET name= бля бля бля.
Е много е засукано и това ми струваше над час химичене...и признавам, че такава машинация бе далеч от острия ми ум.
И раздвам награди
зелена точка за Avalanche
зелена точка за abcd
и признавам, че тъпках яко Донка сюджуци по този начин:
$rs=mysql_query('SELECT * FROM group_cat WHERE name="'.$name.'" AND group_cat_id!="'.$id.'"'); echo '<pre>';
echo '</pre>';
echo '<br />';
{
echo '<p>името съществува</p>';
}
else
{
if($id>0)
{
//обновяване на инфо
mysql_query('UPDATE group_cat SET name="'.$name.'",`desc`="'.$desc.'" WHERE group_cat_id="'.$id.'"'); echo '<p>успешно обновление</p>';
}
else
{
//въвеждане на ново инфо
mysql_query('INSERT INTO group_cat (name, date_added,`desc`) VALUES("'.$name.'", "'.time().'", "'.$desc.'")'); echo '<p>успешен запис</p>';
}
}
Oх, отивам да се изрусявам, че ми побеля косата от мътене на мозък.