| |
|
|
| | Вот собственно такой вот вопрос как сделать чеб все нормально работало есть вот такой вот скриптик
require("translit.php");
$host="localhost";
$user="root";
$pass="";
$dbname="co";
function conn()
{
global $conn, $host, $user, $pass, $dbname;
$conn=mysql_connect($host,$user,$pass);
mysql_select_db($dbname);
}
conn();
$sql=mysql_query("SELECT * FROM co_cats ORDER BY cat_id");
while($o=mysql_fetch_array($sql))
{
echo "$o[cat_id] - $o[cat_name]<br/> ";
$st = $o[cat_name];
$c_id = $o[cat_id];
$st1 = Translit::UrlTranslit($st);
echo "$st1<hr />";
$sql=mysql_query("update co_cats set url_name='$st1' where cat_id='$c_id' ");
}
?>
|
Цель данного скрипта обработка одного поля в строке и запись уже обработоного в другое поле этой же строке
и получается когда не было вот этой строки
$sql=mysql_query("update co_cats set url_name='$st1' where cat_id='$c_id' ");
|
в браузере выводило всю таблицу (нужнное поле) и обрабатывало его (тоесть все было видно на мониторе)
после того как поставил эту строку (каторая указанна выше), обрабатывает только первую строку вносит измение в первой строке а потом пишет вот такую вот дрянь
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:\home\test1.ru\www\s.php on line 25
|
а именно проблема с этим вот (как он пишет)
while($o=mysql_fetch_array($sql))
|
подскажите пожалуста как сделать что бы все же оно нормально работало а не так сказать выводило на экран первую строку и записовало только в первую строку
Обясник как мог, сразу говорю я не программист но вот тут сталкнулся казалось бы с маленькой проблемкой но смотрю что без старонней помощи уже не разберусь | |
| |
|
|
| |
|
|
| |
для: Dali
(04.01.2007 в 16:31)
| | | $sql=mysql_query("update co_cats set url_name='$st1' where cat_id='$c_id' ") - переименуйте переменную $sql. | |
| |
|
|