Не всё выводит SELECT....

phpusershik

Using PHP
Не всё выводит SELECT....

Делаю такой запрос к базе а затем вывод но он выводит не все поля которые я запросил а некоторые где я ошибся?

$sql = "SELECT pro_id,product_name,type,description,data,time FROM comp_orders WHERE data='$data' AND pro_id='$pro_id'";
// Result generation...
$result = @mysql_query($sql,$db);
// result separating for each line...
for ($i = 0; $i < @mysql_num_rows($result); $i++) {
$type = @mysql_result($result, $i, "type");
$pro_id = @mysql_result($result, $i, "pro_id");
$product_name = @mysql_result($result, $i, "product_name");
$description = @mysql_result($result, $i, "description");
$data = @mysql_result($result, $i, "data");
$time = @mysql_result($result, $i, "time");
}
echo "$type ||";
echo "$pro_id ||";
echo "$product_name ||";
echo "$description ||";
echo "$data ||";
echo "$time ||";

Он некоторые выводит а некоторые нет? Но все эти поля есть на базе!
 

fixxxer

К.О.
Партнер клуба
Ойбл.

$sql = "SELECT pro_id,product_name,type,description,data,time FROM comp_orders WHERE data='$data' AND pro_id='$pro_id'";
$result = mysql_query($sql,$db) or die('sql error');
while (($a = mysql_fetch_row($result)) !== false) {
foreach($a as $v) echo $v . " | ";
echo "<br>\n";
}
 

fixxxer

К.О.
Партнер клуба
и еще, скажи пожалуйста, зачем ты крутишь цикл с чтением в переменные, если выводишь только последние значения?
 

phpusershik

Using PHP
Умно...COOL..

Т. е. ты написал более коротко но проблема осталось т.е. он выводит то же самое а не всё? А цикл просто я хотел что бы он знал какая переменая кокому полю относится!
 

fixxxer

К.О.
Партнер клуба
Что селектишь, то и выводится. Твой код вообще непонятный - ты выводишь только последнюю строку результирующей таблички. про mysql_result забудь как про страшный сон - ничего тормознее для работы с mysql еще не придумано.
 

Фанат

oncle terrible
Команда форума
про собаки в коде - тоже забудь.
Ничего вреднее собаки, которой программист сам себе жизнь портит, еще не придщумали.

ты вообще где такой код выискал?
у кого учился?

зайди в [f]newbie[/f] и посмотри, как более-менее правильно работать с базой.
на простых примерах.
 

Фанат

oncle terrible
Команда форума
[f]newbie[/f]
ты это читал небось - миллион раз.
во всяком случае - должен был
 

phpusershik

Using PHP
fixxxer

Я написал как ты говорил вот так:
$sql = "SELECT pro_id,product_name,type,description,data,time FROM comp_orders WHERE data='$data' AND pro_id='$pro_id'";
$result = mysql_query($sql,$db) or die('sql error');
while (($a = mysql_fetch_row($result)) !== false) {
foreach($a as $v) echo $v . " | ";
echo "<br>\n";
}
echo $sql;

А он мне вывел вот это:

SELECT pro_id,product_name,type,description,data,time FROM comp_orders WHERE data='' AND pro_id='3'

он мне вывел названия полей таблицы:
 

Фанат

oncle terrible
Команда форума
если оно тебе вывело только запрос, то это значит, что ни одной строки из базы не пришло.
Это значит, что записей, удовлетворяющих запросу, В БАЗЕ НЕТ!
 

phpusershik

Using PHP
Фанат

Спапсибо я нашёл ошибку!
Но вот вчера мне Кром подсказал что нужно делать так
REPLACE INTO table_a (text) SELECT text FROM table_b
и я зделал см ниже но в реальном случае у меня так:

$sql = REPLACE INTO received ('','$orderno','$data','$time','$status','$pro_id','$product_name','$type','$description','$quantity','$sklad_name','$rdata','$rtime') SELECT '','$orderno','$data','$time','$status','$pro_id','$product_name','$type','$description','$quantity','$sklad_name' FROM comp_orders";
$result = @mysql_query($sql,$db);

Но ничего не делает? Если нетрудно скажи что я делаю неправильно потому что у тебя больше опыта и ты может сталкивался с таким случаем.:confused:
 

Фанат

oncle terrible
Команда форума
Что за бред?
с какой стати тут реплейс?!
реплейс с указанием пустого id - это идиотизм!
что у тебя за задача?

у УБЕРИ ТЫ НАКОНЕЦ ЭТЦУ ИДИОТСКУЮ СОБАКУ от имен функций!
То, что ты сам у себя жтим время крадешь - мне плевать.
Но ты крадешь его этим у МЕНЯ!

похоже, в правила надо ввести пункт.
Если в коде есть собака, то тему закрывать.
 
Сверху