Построение таблицы в php

Irina_lala

Новичок
Нужна помощь, никак не могу разобраться, где ошибка, люди всемогущие, помогоите!!

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

<html>
<head>
<title>Построение таблицы</title>


</head>

<body>

<?php
$a=$_POST['a'];

$b=$_POST['b'];
$d=$_POST['d'];
$c=$_POST['c'];
$y=$_POST['y'];
$x=$_POST['x'];
?>

<h1>Построение таблицы</h1>

<form method="post" action="index2.php">
<h2>Определение параметра таблицы</h2>
<br/>
Количество строк: <input name="a" type="text"/>
<br/>
Количесвто столбцов :<input name="b" type="text"/><br/>
Цвет фона таблицы, RGB :<input name="c" type="text"/><br/>
Бордюр таблицы, px :<input name="d" type="text"/><br/>


<input type="submit" name="button" value="построить таблицу"/> <br/>
<table border ="<?php echo $d;?>px" bgcolor="#<?php echo $c;?>">
<?php
if(!$a)
{echo "Не введены данные";
exit;}
elseif(!$b)
{echo "Не введены данные";
exit;}
elseif(!$d)
{echo "Не введены данные";
exit;}
elseif(!$c)
{$c=ffffff;}


for ($x=1;$x<=$a;$x++)
{

echo "<tr>";

for ($y = 1; $y <= $b; $y++)

{
echo "<td> строка -".$x." ячейка - ".$y."</td>";


}
echo "</tr>";
}

?>
</table>
</form>
</body>
</html>
 

Фанат

oncle terrible
Команда форума
Я думаю, задачу надо разделить на части.
сначала научиться рисовать таблицу из прописанных в скрипте данных.
а потом уже передавать их из формы.
предлагаю переписать код, оставив в нем только необходимое для рисования таблицы. так будет гораздо проще разбираться с ошибками.

плюс обязательно надо сразу освоить две самые важные вещи в программировании:
форматирование отступами и раскраска синтаксиса кода
форматирование надо делать самой, помещая подчинённые блоки кода со сдвигом вправо.
раскраска на форуме делается с помощью кнопки "PHP"

сразу предупреждаю, что готового решения на блюдечке с голубой каёмочкой ждать не стоит.
здесь помогают только тем, кто сам прикладывает какие-то усилия.
 

Irina_lala

Новичок
Это понятно, что никто решения предоставлять не будет, я просто не понимаю конкретно где находится ошибка. т.е почему она происходит. я только новичок
 

Фанат

oncle terrible
Команда форума
ну так надо учиться.
надо учиться самостоятельно находить ошибки.
за каждой опечаткой на форум не набегаешься.

и не не вижу практических действий.
пост не отредактирован, код не отформатирован.
 

eax

#
Irina_lala
У вас php не установлен. Либо вы пытаетесь просто открыть файл в браузере :) Используйте http://www.denwer.ru/ если так. Блин я себя вспомнил, когда в первый раз пытался запустить php скрипт, открывая его просто с рабочего стола
 

Irina_lala

Новичок
ну так надо учиться.
надо учиться самостоятельно находить ошибки.
за каждой опечаткой на форум не набегаешься.

и не не вижу практических действий.
пост не отредактирован, код не отформатирован.
Вот я вас не понимаю, я новичок в этом деле, прошу у вас реальной и конкретной помощи, очень хочу в этом разобраться, а вы только и знаете что пишите пустые нотации. Я знаю, что всему этому должна научиться сама и без вас.
 

Absinthe

жожо
Irina_lala вопрос спросила. Совет получила. Но не последовала совету. Зачем тогда спрашивала?
 

Irina_lala

Новичок
Irina_lala
У вас php не установлен. Либо вы пытаетесь просто открыть файл в браузере :) Используйте http://www.denwer.ru/ если так. Блин я себя вспомнил, когда в первый раз пытался запустить php скрипт, открывая его просто с рабочего стола

С Денвером ошибки уже происходить не будет, табличка уже будет нормально воспроизводиться? правильно? я работаю на двух компах сразу, первый на работе, второй дома. Дома я работаю в блокноте, дописываю. а на работе просто в денвер и перекидываю.
 

Фанат

oncle terrible
Команда форума
очень хочу в этом разобраться
Желания мало.
Надо не только хотеть, но и что-то делать.
Что делать, было сказано выше:
- отформатировать код.
- прочитать рекомендации по ссылке.

ничего из этого сделано не было.
претензии, пожалуйста - не к нам, а к себе.
 

Фанат

oncle terrible
Команда форума
eax,
я тут подумал, что намеренно раздражая нас, ты оказываешь медвежью услугу авторам вопросов.
возможно, реакция была бы и мягче, если бы ты не пытался осчастливить человечество
 

evgenmeg

Новичок
Не знаю насколько это еще актуально, но может кому да пригодится еще...

Код:
<html>
<head>
<title>Построение таблицы</title>
</head>
<body>
<?php
$a=$_POST['a'];
$b=$_POST['b'];
$d=$_POST['d'];
$c=$_POST['c'];
?>
<h1>Построение таблицы</h1>
<form method="post" action="index2.php">
<h2>Определение параметра таблицы</h2>
<p><br/>
  Количество строк: <input name="a" type="text"/>
  <br/>
  Количесвто столбцов :<input name="b" type="text"/><br/>
  Цвет фона таблицы, RGB :<input name="c" type="text"/><br/>
  Бордюр таблицы, px :<input name="d" type="text"/><br/>
  <input type="submit" name="button" value="построить таблицу"/> <br/>
    <?php
if(!$a)
    {echo "Не введены данные";
        exit;}
elseif(!$b)
    {echo "Не введены данные";
        exit;}
elseif(!$d)
    {echo "Не введены данные";
        exit;}
elseif(!$c)
    {$c='ffffff';}?>
<table border ="<?php echo $d;?>px" bgcolor="#<?php echo $c;?>">
<?php
for ($x=1;$x<=$a;$x++)
{
    echo "<tr>";
for ($y = 1; $y <= $b; $y++)
{
    echo "<td> строка -".$x." ячейка - ".$y."</td>";
}
    echo "</tr>";
}
?>
  </table>
</form>
</body>
</html>
Ошибки: 1) Зачем вы пытаетесь получить $y и $x
Код:
$y=$_POST['y']; $x=$_POST['x'];
честно сказать мне не понятно, это же счетчики, да и они никуда не передаются, в форме же их нет.
2) Как вы можете проверить и задать цвет таблице после того как уже присвоили его?
Код:
<table border ="<?php echo $d;?>px" bgcolor="#<?php echo $c;?>">
Правильно всегда сначала проверяем потом рисуем или даем цвет, окантовку, заполняем и т.д..

 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
evgenmeg, на дату последнего сообщения в треде смотрели?

PS: и код ваш уныл
 

evgenmeg

Новичок
да видел, и код не мой, а автора топика просто показал в чем ее ошибка была, вот и все.
 

riff

Новичок
Смешно будет, если появится сообщение от ТС "спасибо, помогло" ).
 
Сверху