[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите пожалуйсто со скриптом
Ilisan
Требуется вывести данные из БД в табличку на странице. Код такой (шаблон):



<?
@
mysql_connect("localhost", "root", "") or die(" Подключение завершилось неудачей!");



@mysql_select_db("комплектующие к пк") or die
(" Подключение к БД завершилось неудачей!");


$query = "SELECT *
FROM процессоры ORDER BY Цена"
;
$result = mysql_query($query);


print "<table border align=center>\n";
print "<tr>\n<th>Фирма</th><th>Частота</th><th>Сокет</th><th>Цена</t h><th>Код продукта</th>\n</tr>\n";




$x = 0;
while ($x < mysql_num_rows($процессоры)) :
$Фирма = mysql_result($result, $x, 'Фирма');
$Частота = mysql_result($result, $x, 'Частота');
$Сокет = mysql_result($result, $x, 'Сокет');
$Цена = mysql_result($result, $x, 'Цена');
$Код продукта = mysql_result($result, $x, 'Код продукта');

print "<tr align=center>\n";
print "<td>$Фирма</td>\n<td>$Частота</td>\n <td>$Сокет</td>\n <td>$Цена</td>\n <td>$Код продукта</td>\n";
print "</tr>\n";
$x++;
endwhile;
print "</table>";


mysql_close( );

?>





Спустя 3 минуты, 27 секунд (5.12.2011 - 10:49) Winston написал(а):

Спустя 2 минуты, 17 секунд (5.12.2011 - 10:51) Michael написал(а):
Цитата
$Код продукта = mysql_result($result, $x, 'Код продукта'); 

ох, какой жир :lol: .

А зачем объекты бд кириллицей названы? Без этого нельзя?

Спустя 1 час, 15 секунд (5.12.2011 - 11:51) Гость_qwerty написал(а):
может легче загнать результат в массив, а потом с ним работать?

$row = mysql_fetch_array($result);

do {

echo 'фирма - ' .$row[фирма]. '<br>';
echo 'частота - ' .$row[частота]. '<br>';
echo 'процессор - ' .$row[процессор]. '<br>'; //и так далее

}

while (row = mysql_fetch_array($result));


По моему так проще, да и кода меньше

Спустя 56 минут, 14 секунд (5.12.2011 - 12:48) NitroGenerate написал(а):
Может быть так еще проще?

$query = "SELECT *FROM процессоры ORDER BY Цена";
?>
<table border align=center><tr><th>Фирма</th><th>Частота</th><th>Сокет</th><th>Цена</th><th>Код продукта</th></tr>
<?



while ($query1 = mysql_fetch_assoc($query)){

echo "<tr align=center><td>$query1['Фирма']</td><td>$query1['Частота']</td><td>$query1['Сокет']</td><td>$query1['Цена']</td><td>$query1['Код продукта]'</td></tr>";

}
print "</table>";


mysql_close( );

?>

Спустя 15 минут, 42 секунды (5.12.2011 - 13:03) Гость_qwerty написал(а):
NitroGenerate

ну вобщем то большой разницы нет))), разве что ты в таблицу все засунул)

Спустя 40 минут, 36 секунд (5.12.2011 - 13:44) Winston написал(а):
Гость_qwerty
Твой код не выведет первую запись из таблицы, потому зачем ты советуешь ?
Ох уж эта поповщина sad.gif

Спустя 5 минут, 41 секунда (5.12.2011 - 13:50) Гость_qwerty написал(а):
Winston

а можно узнать, почему это он не выведет первую строчку то)? По моему do выводит все что есть в таблице, пока while работает. И что за поповщина еще, не читал я этого дела, а учился только по примерам.

Спустя 13 минут, 21 секунда (5.12.2011 - 14:03) Winston написал(а):
Цитата (Гость_qwerty @ 5.12.2011 - 12:50)
почему это он не выведет первую строчку то

А ты сам пробовал этот код? Попробуй. smile.gif
Цитата (Гость_qwerty @ 5.12.2011 - 12:50)
По моему do выводит все что есть в таблице, пока while работает

Здесь достаточно одного while

Спустя 4 минуты, 4 секунды (5.12.2011 - 14:07) Winston написал(а):
Цитата (Гость_qwerty @ 5.12.2011 - 12:50)
учился только по примерам.

Но ведь по примерам Попова ? smile.gif

Спустя 2 минуты, 6 секунд (5.12.2011 - 14:09) Ilisan написал(а):
Уважаемые программисты, я вам всем очень благодарен за советы, но, если не сложно, можете мне объяснить - почему написанный мной код не работает? Кс - это лишь кусок кода, так что предпочтительно (но не обязательно biggrin.gif , просто писать несколько больше), что бы он остался в первоначальном виде.

Спустя 8 минут, 31 секунда (5.12.2011 - 14:18) Гость_qwerty написал(а):
Winston

Попробовал, все замечательно выводит, от первой и до последней записи, можешь сам попробовать. На счет того, что можно и без do я соглашусь, а в остальном это рабочий код

Спустя 1 минута, 51 секунда (5.12.2011 - 14:20) Гость_qwerty написал(а):
Ilisan

А какую ошибку выдает?

Спустя 21 минута, 41 секунда (5.12.2011 - 14:41) Winston написал(а):
Цитата (Гость_qwerty @ 5.12.2011 - 13:18)
Попробовал, все замечательно выводит

А хотя, да, выводит, т.к. ты в переменную ее загнал, а если ты уберешь $row то у тебя выведется на 1 запись меньше + к тому же нотис будет выдан, т.к. $row уже используется до того как будет определена $row в условии while

Вот как будет выглядеть правильно твой код
while ($row = mysql_fetch_assoc($result))
{
echo 'фирма - ' . $row['фирма'] . '<br>';
echo 'частота - ' . $row['частота'] . '<br>';
echo 'процессор - ' . $row['процессор'] . '<br>'; //и так далее
}

Спустя 21 минута, 2 секунды (5.12.2011 - 15:02) Гость_qwerty написал(а):
Winston

ну да. Консенсус! smile.gif

Спустя 1 час, 21 минута, 32 секунды (5.12.2011 - 16:24) Invis1ble написал(а):
Ппц, жесть... Такого я еще не видел

Спустя 7 часов, 17 минут, 34 секунды (5.12.2011 - 23:41) Guest написал(а):
Походу где то я снова налажал:

Parse error: syntax error, unexpected $end in Z:\home\localhost\www\prim\index.php on line 123

<?


@
mysql_connect("localhost", "root", "") or die(" Подключение завершилось неудачей!");



@mysql_select_db("комплектующие к пк") or die
(" Подключение к БД завершилось неудачей!");


$query = "SELECT * FROM процессоры ORDER BY Цена";

$result = mysql_query($query) or die(mysql_error() ."<br/>". $query);





$table = "<table border align=center>\n";


$table .= "<tr>\n<th>Фирма</th><th>Частота</th><th>Сокет</th><th>Цена</t h><th>Код продукта</th>\n</tr>\n";

while ($row = mysql_fetch_assoc($result))

{

$table .= "<tr>\n";

$table .= "<td>".$row['Фирма']."</td>\n";
$table .= "<td>".$row['Частота']."</td>\n";
$table .= "<td>".$row['Сокет']."</td>\n";
$table .= "<td>".$row['Цена']."</td>\n";
$table .= "<td>".$row['Код продукта']."</td>\n";

$table .= "</tr>\n";
}

echo $table;




print " <form action=\"index.php\" method=\"post\">
<input type=
\"hidden\" name=\"seenform\" value=\"y\">
<b>Внесите информацию</b>
<br>Фирма:<br>
<input type=
\"text\" name=\"d\" size=\"20\" maxlength=\"40\" value=\"\">
<br> Частота:<br>
<input type=
\"text\" name=\"m\" size=\"20\" maxlength=\"40\" value=\"\">
<br>Сокет:<br>
<input type=
\"text\" name=\"y\" size=\"20\" maxlength=\"40\" value=\"\">
<br>Цена:<br>
<input type=
\"text\" name=\"c\" size=\"20\" maxlength=\"40\" value=\"\">
<br>Код продукта:<br>
<input type=
\"text\" name=\"z\" size=\"20\" maxlength=\"40\" value=\"\">

<br>
<input type=
\"submit\" value=\"go!\">
<input type=
\"reset\" value =\"reset\">
</form>"
;


if ($seenform == "y"):
if ($d != ""):
if ($m != ""):
if ($y != ""):
if ($c != ""):
if ($z != ""):



$a = "текст_запроса";
mysql_query($a);


$query = "SELECT * FROM процессоры ORDER BY Цена";
$result = mysql_query($query);

$a = "INSERT INTO `процессоры` ( `Фирма` , `Частота` , `Сокет`, 'Цена', 'Код продукта' ) VALUES ('$d' , '$m', '$y', '$c', '$z')";
mysql_query($a);


$x = 0;
print "<table border align=center>\n";
print "<td>$ф</td>\n<td>$ч</td>\n<td>$с</td>\n<td>$ц</td>\n<td>$к</td>\n";
while ($x < mysql_num_rows($result)) :
= mysql_result($result, $x, 'Фирма');
= mysql_result($result, $x, 'Частота');
= mysql_result($result, $x, 'Сокет');
= mysql_result($result, $x, 'Цена');
= mysql_result($result, $x, 'Код продукта');

print "<tr align=center>\n";
print "<td>$ф</td>\n<td>$ч</td>\n<td>$с</td>\n<td>$ц</td>\n<td>$к</td>\n";
print "</tr>\n";
$x++;
endwhile;
print "</table>";
endif; endif; endif; endif;

mysql_close( );

?>


Никто не поможет разобраться ламеру?

Спустя 9 часов, 51 минута, 57 секунд (6.12.2011 - 09:33) semm написал(а):
Сколько же тут мусора то, капец...

У тебя 6 if открыто

if ($seenform == "y"):
if ($d != ""):
if ($m != ""):
if ($y != ""):
if ($c != ""):
if ($z != ""):


А закрыл только 4

endif; endif; endif; endif;

Спустя 7 часов, 46 минут, 58 секунд (6.12.2011 - 17:20) Ilisan написал(а):
semm - большое тебе человеческое спасибо. Возможно есть ещё ошибки?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.