Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не выводит результат в браузере

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (7): [1] 2 3 4 5 6 7 »   

> Описание: когда добавляем данные в БД и проверяем в браузере данные, где править?
KuPbI4
Отправлено: 29 Августа, 2010 - 23:49:33
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




описываю проблему
сама форма:
add.php
CODE (html):
скопировать код в буфер обмена
  1.  
  2.         <form action="add2.php" method="post">
  3.         <label>
  4.       Модель машины:<input type="text" name="model"/><br>
  5.           Год выпуска:<input type="text" name="year"/><br>
  6.           Место стоянки:<input type="text" name="mesto"/><br>
  7.           Пробег:<input type="text" name="probeg"/> км<br>
  8.           Цена:<input type="text" name="money"/> руб.<br>
  9.           <input type="submit" value="Добавить" name="add2"/>&nbsp;<input type="reset" value="Очистить"/><br>
  10.     </label>
  11.         </form>
  12.  

запрос SQL:
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. CREATE TABLE `cars` (
  3. `model` varchar( 255 ) NOT NULL DEFAULT '0',
  4. `year` int( 11 ) NOT NULL  DEFAULT '0',
  5. `mesto` varchar( 255 ) NOT NULL DEFAULT '0',
  6. `probeg` int( 11 ) NOT NULL DEFAULT '0',
  7. `money` int( 11 ) NOT NULL DEFAULT '0',
  8. UNIQUE KEY `year`(`year`)
  9. ) TYPE=MyISAM AUTO_INCREMENT=1;
  10.  

add2.php - сам скрипт добавления
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $db=mysql_connect("localhost", "root", "") or die("Ошибка подключения");
  4. mysql_select_db("catalog", $db) or die("Не могу выбрать БД");
  5. mysql_query("SET NAMES UTF-8");
  6. $query="INSERT INTO cars ( model , year , mesto , probeg , money ) VALUES ('$model', '$year', '$mesto', '$probeg', '$money')";
  7. mysql_query($query);
  8. ?>
  9.  

catalog.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $db=mysql_connect("localhost", "root", "") or die("Ошибка подключения");
  4. mysql_select_db("catalog", $db) or die("Не могу выбрать БД");
  5. mysql_query("SET NAMES UTF-8");
  6. $q = mysql_query("SELECT * FROM catalog");
  7. echo "
  8. <p>Модель:$model</p>
  9. <p>Год выпуска:$year</p>
  10. <p>Место стоянки:$mesto</p>
  11. <p>Пробег:$probeg км</p>
  12. <p>Цена:$money руб</p>
  13. ";
  14. ?>

захожу в браузер http://ссылка_на_сайт/catalog.php
и вижу
Модель:
Год выпуска:
Место стоянки:
Пробег: км
Цена: руб
результат вообще никакой. не отображаются данные, хотя в пхпмайадмине глянул что добавляются данные
а вот в браузере не отображаются, где и что исправлять?!
 
 Top
SAD Модератор
Отправлено: 30 Августа, 2010 - 00:08:25
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




PHP:
скопировать код в буфер обмена
  1. while ($b = mysql_fetch_array($a)) {
  2. echo "
  3.    <p>Модель:$b[model]</p>
  4.    <p>Год выпуска:$b[year]</p>
  5.    <p>Место стоянки:$b[mesto]</p>
  6.    <p>Пробег:$b[probeg] км</p>
  7.    <p>Цена:$b[money] руб</p>
  8. ";
  9. }
 
 Top
KuPbI4
Отправлено: 30 Августа, 2010 - 00:18:32
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




пишет:
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in Z:\home\autolombard59.ru\www\catalog.php on line 55
указывает на
 
 Top
SAD Модератор
Отправлено: 30 Августа, 2010 - 00:19:51
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




не $a а $q поставьте
 
 Top
KuPbI4
Отправлено: 30 Августа, 2010 - 00:28:38
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Ставил, пишет:
Цитата:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in Z:\home\autolombard59.ru\www\catalog.php on line 55


а если
PHP:
скопировать код в буфер обмена
  1.  
  2.    <p>Модель:$b['model']</p>
  3.  

то
Цитата:

arse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in Z:\home\autolombard59.ru\www\catalog.php on line 57

где и что править?

(Отредактировано автором: 30 Августа, 2010 - 00:46:20)

 
 Top
JustUserR
Отправлено: 30 Августа, 2010 - 00:51:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




KuPbI пишет:
Unexpected T_ENCAPSED_AND_WHITESPACE
При интерполяции значения массива по заданному ключу внутри некоторой строки можно использовать различные виды обращения - в первом случае используется конструкция $arr[key] в которой строковые ключи указываются без кавычек и поэтому она может применяться только для значений индексов не использующих специальные символы - вторая конструкция является более универсальной типа {$arr["key"]} и по своему синтаксису эквивалента выражений из уровня PHP-кода за исключением экранирования фигурных скобок


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
KuPbI4
Отправлено: 30 Августа, 2010 - 01:04:13
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




JustUserR пишет:
При интерполяции значения массива по заданному ключу внутри некоторой строки можно использовать различные виды обращения - в первом случае используется конструкция $arr[key] в которой строковые ключи указываются без кавычек и поэтому она может применяться только для значений индексов не использующих специальные символы - вторая конструкция является более универсальной типа {$arr["key"]} и по своему синтаксису эквивалента выражений из уровня PHP-кода за исключением экранирования фигурных скобок

Вы хотите сказать
PHP:
скопировать код в буфер обмена
  1.  <p>Модель:{$b["model"]}</p>

верным решением?
 
 Top
JustUserR
Отправлено: 30 Августа, 2010 - 01:08:35
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




KuPbI4 пишет:
Вы хотите сказать <p>Модель:{$b["model"]}</p> верным решением?
Если в приведенном вами участке PHP-кода переменная с идентификатором $b определена и содержит ассоциативный массив - то такая конструкция является правильной для доступа к его элементу


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
KuPbI4
Отправлено: 30 Августа, 2010 - 02:03:53
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




JustUserR пишет:
Если в приведенном вами участке PHP-кода переменная с идентификатором $b определена и содержит ассоциативный массив - то такая конструкция является правильной для доступа к его элементу

Если так,
PHP:
скопировать код в буфер обмена
  1.  
  2. while ($b = mysql_fetch_array($q)) {
  3. echo "
  4.   <p>Модель:{$b['model']}</p>
  5.   <p>Год выпуска:{$b["year"]}</p>
  6.   <p>Место стоянки:{$b["mesto"]}</p>
  7.   <p>Пробег:{$b["probeg"]} км</p>
  8.   <p>Цена:{$b["money"]} руб</p>
  9. ";
  10. }
  11.  

то
Цитата:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in Z:\home\autolombard59.ru\www\catalog.php on line 55

где мне копать ошибку?

upd:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $db=mysql_connect("localhost", "root", "") or die("Ошибка подключения");
  4. mysql_select_db("catalog", $db) or die("Не могу выбрать БД");
  5. mysql_query("SET NAMES UTF-8");
  6. $query="SELECT * FROM cars";
  7. $r=mysql_query($query) or die(mysql_error());
  8. echo "
  9.   <p>Модель:$s[model]</p>
  10.   <p>Год выпуска:$s[year]</p>
  11.   <p>Место стоянки:$s[mesto]</p>
  12.   <p>Пробег:$s[probeg] км</p>
  13.   <p>Цена:$s[money] руб</p>
  14. ";
  15. ?>
  16.  

Результат:
Цитата:

Модель:

Год выпуска:0

Место стоянки:

Пробег:0 км

Цена:0 руб

Решено. Но тут совсем не так, я когда вводил в поля разные значения, а выводит 0 (нули), почему так?
когда создаю еще вторую запись, и проверяю, а в результате одна запись, почему?
я все прекрасно понимаю, что столько задаю вопросов, плохо понимаю пхп но потихонечку разбираюсь)


Отредактировано модератором: SAD, 30 Августа, 2010 - 21:05:25
 
 Top
KuPbI4
Отправлено: 30 Августа, 2010 - 20:03:04
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Кто мне подскажет? А то у меня с работой только с этим проблемы. Заранее благодарю.
 
 Top
SAD Модератор
Отправлено: 30 Августа, 2010 - 21:07:32
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




у тебя запрос ничего не выбирает
Цитата:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given

попробуй сделать эту выборку в phpmyadmin
 
 Top
KuPbI4
Отправлено: 31 Августа, 2010 - 00:07:59
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Результат таков:
скрипт добавления:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $model = strip_tags(stripslashes(substr($_POST['model'],0,255)));
  4. $year = strip_tags(stripslashes(substr($_POST['year'],0,11)));
  5. $mesto = strip_tags(stripslashes(substr($_POST['mesto'],0,255)));
  6. $probeg = strip_tags(stripslashes(substr($_POST['probeg'],0,11)));
  7. $money = strip_tags(stripslashes(substr($_POST['money'],0,11)));
  8.  
  9. $db=mysql_connect("localhost", "root", "") or die("Ошибка подключения");
  10. mysql_select_db("catalog", $db) or die("Не могу выбрать БД");
  11. mysql_query("SET NAMES UTF-8");
  12. $query="INSERT INTO cars ( model , year , mesto , probeg , money ) VALUES ('$model', '$year', '$mesto', '$probeg', '$money')";
  13. mysql_query($query);
  14. echo "Запись добавлена! =)";
  15. ?>
  16.  

Результат:
Цитата:

Модель:ads

Год выпуска:123123

Место стоянки:qweqe

Пробег:12313 км

Цена:123123 руб


Модель:q

Год выпуска:123

Место стоянки:as

Пробег:123 км

Цена:11 руб


Модель:asd

Год выпуска:1231

Место стоянки:qweasd

Пробег:2131 км

Цена:111 руб


Всё очень даже, хорошо.. Улыбка Хотелось бы сделать свёрстку страниц, т.е. на одной странице будет 5 данных а на следующей тоже 5. Кто подскажет?
Сложно ли делать редактирование и удаление каталога?
 
 Top
SAD Модератор
Отправлено: 31 Августа, 2010 - 00:10:36
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




постраничная навигация. поиск по сайту и гугл в помощь. тема изъезженная вдоль и поперек
 
 Top
Object
Отправлено: 31 Августа, 2010 - 10:15:09
Post Id


Гость


Покинул форум
Сообщений всего: 67
Дата рег-ции: Авг. 2010  


Помог: 3 раз(а)




Так проблема в Warning:... уже решена или это в phpmyadmin все так чудесно выбирается?
Сам долго мучился с этой проблемой.

Да и еще у вас что поле "Год" уникальное? А разве не бывает автомобилей одного года выпуска?
 
 Top
KuPbI4
Отправлено: 31 Августа, 2010 - 15:13:20
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Object пишет:
Да и еще у вас что поле "Год" уникальное? А разве не бывает автомобилей одного года выпуска?

это была проверка Улыбка

насчет постраничной навигаций, много тем глянул, ни один не работает Недовольство, огорчение

вот допустим:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $from = $_POST['from'];
  4. if (!isset($from)) $from = 0;
  5. $count = 3; // по 3 записи
  6.  
  7. $db=mysql_connect("localhost", "root", "") or die("Ошибка подключения");
  8. mysql_select_db("catalog", $db) or die("Не могу выбрать БД");
  9. @mysql_query("SET NAMES UTF-8");
  10. $q = mysql_query("SELECT * FROM cars LIMIT $from, $count");
  11.  
  12. while($b = mysql_fetch_array($q)) {
  13.  
  14. echo "
  15.   <table align='center' class='katal'>
  16.   <tr>
  17.   <td colspan='2' class='katal_title'>
  18.   <p class='katalog'>Модель:$b[model]</p>
  19.   </td>
  20.   </tr>
  21.   <tr>
  22.   <td width='345px'>
  23.   <p class='katalog_1'>Год выпуска:$b[year]</p>
  24.   <p>Место стоянки:$b[mesto]</p>
  25.   <p>Пробег:$b[probeg] км</p>
  26.   <p>Цена:$b[money] руб</p>
  27.   <br>
  28.   </td>
  29.   </tr>
  30.   </table>
  31. ";
  32. }
  33. //определяем сколько страниц
  34. list($num_records) = mysql_fetch_array(mysql_query('select count (*) from cars '));
  35. $count_pages = $num_records/$count + 1;
  36. // дальше ссылки на остальные страницы
  37. for ($i = 0; $i < $count_pages; $i += $count)
  38. {
  39. if ($i != $from)
  40. echo "<a href = catalog.php?from=$from>";
  41. echo "страница ".$i/$count;
  42. echo "</a>";
  43. echo "";
  44. }
  45. ?>
  46.  

Ошибка такова:
Цитата:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in Z:\home\autolombard59.ru\www\catalog.php on line 105
страница 0

ошибку указывает на
PHP:
скопировать код в буфер обмена
  1.  
  2. list($num_records) = mysql_fetch_array(mysql_query('select count (*) from cars '));
  3.  

где и что править?!
 
 Top
Страниц (7): [1] 2 3 4 5 6 7 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB