Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте!
Вот такой вопросик.
Объясните почему в этом скрипте выдается фраза "Table 'phonelist' already exists" ?
И что вообще нужно сделать, чтобы произошел вывод таблицы в браузер?
Я тонкостей не знаю, хочу понять элементарное...
Спасибо заранее...
<?php
$user="root";
$pass="";
$db="spoon";
mysql_connect("localhost",$user,$pass)
or die("not connect: ".mysql_error());
@mysql_query("CREATE DATABASE $db");
mysql_select_db($db)
or die("Could not select database:".mysql_error());
mysql_query('CREATE TABLE phoneList(
id INT PRIMARY KEY,
name VARCHAR(15),
family VARCHAR(15),
email VARCHAR(20),
phone VARCHAR(15)
)') or die (mysql_error());
mysql_query("INSERT INTO phoneList SET
id='0',
name='Roman',
family='Kojin',
email='roma@ya.ru',
phone='123-456-678'
") or die (mysql_error());
$r=mysql_query('SELECT*FROM phoneList ORDER BY id')
or die (mysql_error());
for($data=array();$row=mysql_fetch_assoc($r);$data[]=$row);
echo "<pre>";print_r($data); echo "</pre>";
?>
Неактивен
Ошибка означает, что у Вас уже есть таблица phoneList.
Можете поменять CREATE TABLE -> CREATE TABLE IF NOT EXISTS,
тогда таблица будет создаваться только в случае ее отсутствия.
Неактивен
Всё... спасибо, заработало)))
Что же в книгах то так сразу не пишут)))
Из-за таких ситуаций многие люди и бросают изучение.
Неактивен
Позволю себе с вами не согласится.
Из за ТАКИХ вещей БРОСАЮТ обучение либо безнадежные лентяи либо люди не способные к самообразованию. И тех. и тех поменьше бы в программировании - всем было бы легче, потому что эти люди пишут в итоге хреновые программы. Не принимайте это на свой счет - я говорю именно про этих абстрактных "многих людей". Ведь ни для кого не секрет что плохих программистов гораздо больше чем хороших, так же как и художников, слесарей, водителей....
Ни одна книга не может осветить все нюансы, и все возможные их комбинации. Есть вещи которые многим могут быть очевидны, в частности данная, ведь подумайте как можно создать таблицу, если она уже существует? Вы например пробовали создать файл с именем уже существующего файла в том же каталоге?
Приходя в мир программирования надо быть готовым рыть, копать, искать.. Причем самому. в крайнем случае спрашивая совета у дргих, более опытных. Ваш вопрос не относится к сложным, ответ на него легко находится самостоятельно. Вот два подвернувшихся под руку варианта:
1. открываю книжку MySQL5 Максим Кузнецов, Игорь Симдянов.
Читаю - глава 12. Создание и удалене таблиц.
Синтаксис оператора CREATE TABLE:
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name ........
2. Открываю документацию Mysql. раздел 12.1.10. CREATE TABLE Syntax:
Читаю:
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name (create_definition,...) [table_option ...] [partition_options]
Достаточно бегло взглянуть, чтобы заметить это самое IF NOT EXISTS, и я думаю даже не надо сильно знать инглиш, чтобы понять что это значит, разве нет?
Или вы считаете, что в каждой книге все таки должно быть разжевано ВСЁ, до последней капли? Распечатайте себе доку по mysql и посмотрите какого она объёма, теперь добавьте мысленно чисто книжных-учебных текстов + листинги кодов примеров. Представили себе такую книгу? Удобно ею будет пользоваться?
Приучайте себя читать и искать а не надеятся на то что все что вам понадобится будет написано в книге.
Неактивен
Я думаю, что Вы зря так резко ответили
Скорее всего, проблема в том, что в какой-то книге есть листинг, который
человек набрал и запустил два раза. А вот на втором проходе получил
ошибку, что вполне закономерно. И правильно, что написал на форуме, а не
бросил изучение
Удачи!
P.S. Но я тоже за то, чтобы программы писались качественно
Неактивен
не, это я не резко, чессное слово Я даже попросил не принимать это на свой счет
никого не хочу обидеть и не буду. Умный меня поймет и не обидится, глупый... ну чтоя могу поделать, я просто высказал свое мнение, полученное на собственном опыте Бывало и меня посылали, хоть и редко, и когда то я обижался
Потом понял, что выгляжу идиотом, задавая вопросы написанные в первых строчках мануала, еще хуже когда я с таким вопросом не первый а 100-ый или больше. Понятно, что отвечающим становится плохо. Понимание этого избавляет от многих потенциальных недопониманий.
Впрочем это все OFF.
raven20081981.
По теме замечу что когда натнкетесь на необходимость удалять таблицу имейте ввиду, что у DROP TABLE есть такое же ключевое слово.
Отредактированно Shopen (02.12.2007 20:06:08)
Неактивен
Да всё нормально)) Хоть послушал мнение)))
Ответ:
Например. Книжка по PHP Дмитрия Котерева.
Он расписывает как установить Апач, Php и mysql...
C первыми 2-мя проблем нет... А с mysql были проблемы, причём у многих...
Не помню уже что там писалось... вроде что "путь длинный"..
Так вот, когда ему задали вопрос "в чём проблема?" на каком-то форуме..
Он ответил "ставьте ДЕНВЕР". Вот после такого иногда не охота продолжать изучать...
Уже изначально понимаешь.. что с одной тока настройкой заколебешься (photoshop настраивать не надо))) ну я утрировано конечно говорю..... Суть вы должны уловить...
Это ладно я, и до PHP сам дошёл и этот пример по MySQL спросил...
Многие мои знакомые даже продолжать не стали...
Для успешного изучения - нужен толчок (чтобы что-то получилось).
Я поэтому и написал... Не бойтесь.. Я в ближайшее время вас не побеспокою)))
Для меня было важно чтобы я увидел что это работает...
Ну и закончу так)))
Каждый изучает так, как может... Не надо всех равнять...
Кому то надо тока прочитать... кто-то изучит с 5-го раза, а кто-то так и останется во "Введении"..
Я считаю, если человек хочет изучать, то не надо ему мешать...
Жизнь покажет кем он станет... Хотя с вами я согласен....
Хороших программистов действительно мало...
p.s. книжек у меня таких нет.... пока тока прочитал Котерова...
там не большая вставка по Mysql (всё-таки он про PHP писал)..
ваши киниги теперь обязательно почитаю!
буду умнее))
Спасибо за мнение!
Неактивен
Начать сложнее всего, так как еще нет в голове полной картины, а нужно заставить части целого уже работать. Данный раздел форума для того и служит, поэтому не стесняйтесь задавать вопросы. И надеюсь в будущем Вас увидеть в разделе "Оптимизация производительности MySQL".
Про установку PHP, MySQL, Apache у нас на сайте есть статья http://sqlinfo.ru/articles/info/6.html
Я бы порекомендовал книгу Энди Харриса, PHP/MySQL для начинающих. Ее плюс в том, что она маленькая, следовательно там мало неправильного написано - только основы. Электронный вариант можно найти в инете в djvu.
Мало хороших программеров во многом не в силу качеств людей, а из-за недостатка обучающих программ для среднего уровня, а во многом из-за массовых ошибок проектирования самого языка PHP, который для многих, к сожалению, первый язык.
Неактивен
raven20081981,
мы скоро запустим проект, в котором можно будет задавать вопросы также по PHP, HTML и некоторым другим технологиям.
Сейчас проект находится на стадии альфа-тестирования, но на вопросы мы там все равно уже отвечаем.
Если Вас это заинтересовало - пишите.
Неактивен
raven20081981 написал:
p.s. книжек у меня таких нет.... пока тока прочитал Котерова...
там не большая вставка по Mysql (всё-таки он про PHP писал)..
ваши киниги теперь обязательно почитаю!
Вы под книжками чего имеете ввиду? Я упоминал только одну, вторая называется RTFM - доступна всегда тут:
http://dev.mysql.com/doc/refman/5.1/en/index.html
в частности по CREATE TABLE:
http://dev.mysql.com/doc/refman/5.1/en/ … table.html
Кстати не знал, что Котеров книгу выпустил, нада будет почитать
Ваш пример про ДЕНВЕР не очень ясен, нужен контекст, чтобы понимать почему он так вот развернул в сторону денвера (хотя, кстати, денвер - оч удобен, сейчас вышел 3-й, вроде как с 5 mysql наконец то, и много чем еще)
raven20081981 написал:
Каждый изучает так, как может... Не надо всех равнять...
Кому то надо тока прочитать... кто-то изучит с 5-го раза, а кто-то так и останется во "Введении"..
Я считаю, если человек хочет изучать, то не надо ему мешать...
Жизнь покажет кем он станет...
А кто то мешает или равняет? Если не трудно покажите в каком месте я сравнял кого то с чем то?
Я лишь развернуто возразил так сказать свое возражение на два ваших постулата, которые я считаю глубоко ошибочными.
Первый - это о том что все ситуации должны быть рассмотрены в книгах. Это неверно, потому что это просто невозможно, почему - см. выше.
Второй - это ваше сожаление по поводу того, что из-за этого (п.1) люди бросают начатое. Я совершенно убежден, что тот кто в этой ситуации бросит начатое - не программист, нет не потому что он не достоин или еще что то - а потому что не умеет добиваться своих целей. Ведь вы же не бросили, пошли спросили в форуме, кто то пойдет в документации прочтет, кто-то на курсы - вот они пойдут вперед, а кто бросит - ну и слава богу, значит это не его. И не жалко, понимаете?
И я не слова не сказал о том, что спрашивать например не надо - надо, спрашивайте, кто знает - ответит, и даже с удовольствием, например как это принято на этом форуме
Но не забывайте про RTFM, потому что там есть ответы на примерно 90% всех вопросов, заведите ее себе как настольную книгу
Отредактированно Shopen (03.12.2007 01:57:12)
Неактивен
rgbeast написал:
Мало хороших программеров во многом не в силу качеств людей, а из-за недостатка обучающих программ для среднего уровня, а во многом из-за массовых ошибок проектирования самого языка PHP, который для многих, к сожалению, первый язык.
И согласен и не очень. Литературы, в частности по mysql - навалом, и даже неплохой. Информации в интернете -- еще больше. Про php я вообще молчу.
Умение систематизации и обобщения разнородной информации - это не дают на курсах и семинарах - это дают в университетах высшего образования, особенно технического профиля. Как нам говорил один уважаемый лектор - "в институтах вам более всего необходимо научится пользоваться справочной литературой"
Впрочем кому то (редко) это дается и от бога, но таких единицы.
А у нас за частую программируют школьники и студенты первых курсов, потому что это модно (а также круто, прикольно и/или просто интересно). Это не плохо само по себе, просто это отражается в конечном счете в низкой культуре программирования, усредненной на количество людей в этой области. Достаточно походить по интернету и посмотреть какие вопросы наиболее часто задаваемы. И сразу видно, что на большую часть самых распространенных вопросов уже есть ответы, причем прямо в "инструкции по эксплуатации" mysql, но и не только там. Это говорит о том, что по большей части спрашивающие НЕ УМЕЮТ ИСКАТЬ!!!, а часть из них, даже и не хочет - и это проблема, искать нигде не учат.
А php к сожалению нормальной альтернативы на данный момент нет
Неактивен
В PHP есть принципиальные проблемы дизайна - магические кавычки разнообразных
типов, например. Или глобальные переменные. Даже разумный человек, не будет никогда
читать раздел мана про магические кавычки, если он их не собирается использовать. Или
про глобальные переменные.
Типичный пример с глобальными переменными - рассчитывать, что переменная в начале
сценария не определена. В PHP это не так. И для этого надо прочитать _специальную_
страничку в мане.
Кавычки... тоже классная дикость. Особенно когда человек начинает на них полагаться.
Не говоря уж о том, что это абсолютно непереносимый код. Даже между PHP (ведь кавычки
могут быть отключены)
Брр... много написал.. ну, не люблю я его
А альтернатива есть - Perl, XSL... просто это не так популярно...
Неактивен
Ну... Perl... это совсем другой язык, он во первых не погружен в код, и чтобы его "погрузить" нужны неслабые телодвижения, отсюда все сразу становится на порядок сложнее. Да и просто Perl очень сложен, особенно для начинающих q и qq чего стоят
А XSL - вообще трудно назвать серверным языком программирования, это скорее что-то из разряды css по крайней мере именно так он задумывался.
а php прост и доступен - отсюда и много проблем, с другой стороны (я его тоже не люблю)
Впрочем бог с ним, мы то здесь про mysql в основном
Неактивен
http://forum.dklab.ru/viewtopic.php?p=9 … amp;noimg=
посмотрите....
Неактивен