Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как создать таблицу с координатами (x,y) ячеек? Как создать таблицу с координатами (x,y) 
:(
    Опции темы
miraz
Дата 14.5.2008, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 14.5.2008
Где: Литва. Вильнюс

Репутация: нет
Всего: нет



Цитата

Тяжело жить человеку с деревяной головой... smile 


SOS! Помогите полному дубу! Преподаватель озадачил задачкой, суть такова: автомобильная стоянка 10х10. Автомобиль въезжает- в базу идет запись, уезжает - соответсвенно запись удаляется. По моему, не очень большому, разумению, нужно создать форму, с активными ячейками. Табличку то мне удалось кое-как склеять, но вот ячейки без координат. Как с этим справиться? Понимаю, что с таким кодом координат не задать, но как сделать правильно- ума не приложу. :(
Код

<?php for ($i=0;$i<10; $i++) 
echo '<table border="0">
    <tr >
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
        <td width="10" height="12">
        <form name="numbers" method="POST" action="">
        <input type="submit"value="">
        </td>
    </tr>
</table>'

?>
 
Заранее спасибо!
PM MAIL   Вверх
Feldmarschall
Дата 14.5.2008, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Ты с формами раньше работал?
Если да, то почему возникает вопрос ,как передать что-либо из формы?
почему бы не добавить в каждую форму поле с координатами?
PM   Вверх
miraz
Дата 14.5.2008, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 14.5.2008
Где: Литва. Вильнюс

Репутация: нет
Всего: нет



Цитата

Тяжело жить человеку с деревяной головой...  

Опыта мало :(. При таком раскладе получается 100 ячеек. Кроме того, препод требует именно такого решения, или похожего :(
PM MAIL   Вверх
almagnit
Дата 14.5.2008, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 3.4.2008

Репутация: нет
Всего: 7



Думаю так должно получиться:

Код

<?php 
echo '<table border="0">';
for ($i=0;$i<10; $i++){
    echo '<tr>';
    for( $j=0; $j<10; $j++){
        echo '    <td width="10" height="12">
                <form name="numbers" method="POST" action="">
                    <input type="hidden" id="x" value="'+$i+'">
                    <input type="hidden" id="y" value="'+$j+'">
                    <input type="submit" value="">
                </form>
            </td>';
    {
    echo '</tr>';
} 
echo '</table>';
?>


Добавлено через 4 минуты и 50 секунд
Только в поле action нужно добавить имя файла который будет обрабатывать данные о 

координатах и записывать их в БД.

ЗЫ:

Только кроме этого тебе нужно продумать как ты будешь обновлять поле свое стоянки, т.е. 

помечать занятые и свободные места, например надписями на кнопках.
PM MAIL ICQ   Вверх
miraz
Дата 14.5.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 14.5.2008
Где: Литва. Вильнюс

Репутация: нет
Всего: нет



Цитата

Тяжело жить человеку с деревяной головой...

:( совсем не то получилось: 

0123456789 
12345678910 
234567891011 
3456789101112 
45678910111213 
567891011121314 
6789101112131415 
78910111213141516 
891011121314151617 
9101112131415161718 
 
Но все равно- спасибо!
PM MAIL   Вверх
almagnit
Дата 14.5.2008, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 3.4.2008

Репутация: нет
Всего: 7



А так  smile :

Код

<?php 
echo '<table border="0">';
for ($i=0;$i<10; $i++){
    echo '<tr>';
    for( $j=0; $j<10; $j++){
        echo '    <td width="10" height="12">
                <form name="numbers" method="POST" action="">
                    <input type="hidden" id="x" value="'.$i.'">
                    <input type="hidden" id="y" value="'.$j.'">
                    <input type="submit" value="Ряд:'.$i.'; Место:'.$j.'">
                </form>
            </td>';
    }
    echo '</tr>';
} 
echo '</table>';
?>

PM MAIL ICQ   Вверх
miraz
Дата 14.5.2008, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 14.5.2008
Где: Литва. Вильнюс

Репутация: нет
Всего: нет



Цитата

Тяжело жить человеку с деревяной головой...


Что-то похожее. Только вот внизу, все равно координат не показывает. Когда навожу курсор на кнопку - показыват адрес файла.  Или и не должно показывать? Совсем дыра в голове smile. Спасибо! Пойду спать. Завтра буду дальше все это мучать.
PM MAIL   Вверх
almagnit
Дата 14.5.2008, 22:38 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 3.4.2008

Репутация: нет
Всего: 7



По нажатию на кнопку надпись на кнопке должна меняться на "Занято", а в БД должна добавляться

соответсвующая запись.

Добавлено через 1 минуту и 22 секунды
ЗЫ:

А про деревяную голову ты зря так говоришь  smile , ИМХО мы есть то что мы думаем.
PM MAIL ICQ   Вверх
miraz
  Дата 15.5.2008, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 14.5.2008
Где: Литва. Вильнюс

Репутация: нет
Всего: нет



Спасибо!
 smile  про дырявую голову- это из песни о Буратино. Хотя, иногда, кажется что очень даже подходит :( Я Вильнюсе живу, занятия на литовском, пока я эту тарабарщину (в уме) перевожу на более удобоваримый язык- обязательно что-то прозеваю. Вот потом и получается, как в истории о грузине на поле чудес- "Читать умею,  а писать нет".  smile Спросить нет у кого, среди знакомых всего один программист и тот с РНР не знаком, а еще, похоже, относится к нему с презрением, чем -то РНР его обидел  smile  наверное. 
Буду пытаться все это к БД подключить  smile , а при нажатии кнопки на мгновение мелькает "готово". 
P.S. а что такое "зы"?  
PM MAIL   Вверх
MoLeX
Дата 15.5.2008, 08:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цитата(miraz @  15.5.2008,  07:44 Найти цитируемый пост)
P.S. а что такое "зы"?  

то же самое что и P.S. тока на русской раскладке


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
Feldmarschall
Дата 15.5.2008, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Цитата(miraz @  14.5.2008,  22:33 Найти цитируемый пост)
Тяжело жить человеку с деревяной головой

Ты зря так думаешь. У тебя есть очень сильное оружие в решении своих задач - осознание собственного уровня.
Большинство таких же, как ты, новичков, приходит сюда в полной уверенности в своей гениальности. И вот им-то приходится гораздо труднее: они просто не желают слушать, что им говорят. Раза с пятого, когда человека три их уговаривает - иногда доходит. А чаще остаются при своем неправильном мнении.

Тебе надо разделить задачу на две части - ввод и отображение. Ввод ты, похоже, освоил. Теперь попробуй отображать занятые ячейки из таблицы. 
Для этого я тебе порекомендую получить все ячейки в массив, а потом, при выводе, проверять - совпадает ли адрес выводимой ячейки с одним из элементов массива. И если совпадает - выводить занято
PM   Вверх
miraz
  Дата 15.5.2008, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 14.5.2008
Где: Литва. Вильнюс

Репутация: нет
Всего: нет



Все! Дошло до абсурда! Ничего не получается  smile  
Существует простенькая таблица с колонками: id (int.prim.autoinc), x(int), y(int). 
Но в ответ получаю - errorColumn count doesn't match value count at row 1. Чего хочет то? 
Код

<?php
include('config.php');
?>

<?php
$car=$_POST['x'];//в этих скобках уже только черта лысого не было :(
$sql="INSERT INTO `cars` VALUES(NULL,'$car')";
$result=mysql_query($sql) or die (error.mysql_error());
?>


Не удалось найти ни одного примера передачи многомерного массива постом в БД  smile  smile  smile 

PM MAIL   Вверх
Feldmarschall
Дата 15.5.2008, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



в простенькой таблице у тебя ТРИ колонки
а в запросе видно невооруженным глазом ДВА значения.

Добавлено через 6 минут и 19 секунд
Цитата(miraz @  15.5.2008,  16:28 Найти цитируемый пост)
Не удалось найти ни одного примера передачи многомерного массива постом в БД

постом в БД ничего передать нельзя. БД не умеет работать с НТТР запросами.
в БД можно передать РНР скриптом. 
многомерный массив - это массив из других массивов. если умеешь работать с одним, то можешь и работать с многомерным

PM   Вверх
ArNic
Дата 15.5.2008, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 278
Регистрация: 3.1.2007

Репутация: нет
Всего: нет



Feldmarschall, а если через $_POST передать строку с разделителем... ну например | и потом уже преобразовать в массив?

Добавлено через 13 секунд
Как думаешь решит это проблему?

Добавлено через 2 минуты и 54 секунды
Feldmarschall опять к тебе. Ты результируй, так как опытнее.
если подключить файл через require_once() в котором будет класс с методами создан, и перегонять в методы переменную с массивами
PM MAIL ICQ   Вверх
Fortop
Дата 15.5.2008, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 20
Всего: 42



miraz, ручками все ручками

Ты должен передавать строку разделеную запятыми, а не массив

Код

implode(',', $_POST) 

отчасти поможет тебе. Но перед этим обработай каждый элемент mysql_real_escape_string()


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0612 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.