Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: php+MySQL?  (Прочитано 19062 раз)
0 Пользователей и 1 Гость смотрят эту тему.
bst7
Гость
« : 12-04-2004 19:39 » 

Здравствуйте. Прошу простить за ламерский вопрос, но в свободное от работы и учебы время решил изучать php, и возникла следующая проблема: установил linux+apache+php+mysql, в базе mysql создал пользователя, дал ему права на запись, чтение, удаление, из php пытаюсь соединиться под этим пользователем с бд, но выдается ошибка о том, что не обнаружна процедура mysq_connect(). Как мне это решить? Спасибо.
Записан
Sommer
Молодой специалист

us
Offline Offline

« Ответ #1 : 13-04-2004 05:33 » 

bst7,
код в студию
у ясновидящих отпуск
Записан

когда-нибудь, я верю, ты будешь ехать по этому городу и поймёшь, что хочешь увидеть меня за рулём мчащейся по соседней полосе машины.
но тогда меня уже не будет
в этом городе
forever yours.
Skubent
Гость
« Ответ #2 : 13-04-2004 08:09 » 

mysq_connect() и не будет обнаружена, сейчас рулит mysql_connect().

Код давай.
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 13-04-2004 10:41 » 

bst7, если причина не в ошибке написания "mysq_connect()", то зайди в /etc/php.ini и посмотри список extension-ов - возможно нужное закоментированно.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
bst7
Гость
« Ответ #4 : 18-04-2004 21:56 » 

Код следующий:
<? mysql_connect(''localhost","user",""); ?>
После запуска выдает что-то наподобие fatal error call undefined function mysql_connect()

Пробовал еще вот так
<?
$ @db=mysql_connect(''localhost","user","");
if (!$db):
print 'не установлено';
else:
print 'установлено';
endif;
?>
После запуска вообще пусто.
База даных и пользователь указаны верные.

2RXL: в /etc/php.ini mysql не закоментирован.
Записан
bst7
Гость
« Ответ #5 : 19-04-2004 17:09 » 

Попробовал подключить динамически
dl("mysql.so");
--Результат прежний
 :?:
Записан
Skubent
Гость
« Ответ #6 : 19-04-2004 18:32 » 

Цитата
<?
$ @db=mysql_connect(''localhost","user","");
if (!$db):
print 'не установлено';
else:
print 'установлено';
endif;
?>
Это вообще работать не будет, ибо @ ставится перед именем функции, $ от имени переменной неотделим... if тоже не такой синтаксис имеет Улыбаюсь
Код давай !

А вот тебе абсолютно рабочий коннект:
Код:
<?php
$link 
mysql_connect ("localhost""username""secret") or die ("Could not connect");
?>

не пренебрегай надписью php Улыбаюсь
« Последнее редактирование: 25-11-2007 17:01 от Алексей1153++ » Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #7 : 20-04-2004 10:56 » 

Skubent, насчет if ты не прав - все конструкции управления имеют такой альтернативный синтаксис.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
bst7
Гость
« Ответ #8 : 20-04-2004 13:26 » 

2Skubent: Так я тоже пробовал. Выдает undefined function. Вообще, если ставить @ перед функцией, то после выполнения @mysql_connect() даже функция print ничего не выводит. Например
<?
print '1-st line';
$sql=@mysql_connect(''localhost","user","");
----
----
----
mysql_close();
print '2-nd line';
?>

после выполнения выдает только
1-st line.

А если не ставить @, то ругается на неопределенную функцию.
Записан
Fireworm
Гость
« Ответ #9 : 21-04-2004 06:26 » 

А оно и не должно ничего выводить. У тебя происходит ошибка во 2-й строке, и работа скрипта прерывается, а само мообщение об ошибке ты подавляеш оператором @.
Но не рекомендуется использовать этот оператор. Ошибки в программе надо обрабатывать, а не подавлять.

Какая версия php? и апача?
Записан
Skubent
Гость
« Ответ #10 : 21-04-2004 06:40 » 

RXL, точно, для совместимости с ранними версиями... Я php только с 4 версии видел Улыбаюсь

bst7, скопировал то, что ты тут выложил, удалил три пустые строки. Получил ошибку в 3-й строке. Выяснилось, перед localhost не кавычка, а два апострофа. Копи-пасте из нерабочего файла можешь сделать ? Там мож тоже опечатка какая. И, кстати, php собирался с опцией --with-mysq или --with-mysql=/path/to/mysql ?
Записан
bst7
Гость
« Ответ #11 : 21-04-2004 17:43 » 

//Apache 2.0.44
//MySQL 4.0.11a
//php-mysql 4.3.0
<html>
<body>
<?
$db=mysql_connect("localhost","user","");
if (!$db):
print could not connect';
else:
print 'connect';
endif;
?>
</body>
</html>
Записан
Fireworm
Гость
« Ответ #12 : 22-04-2004 05:57 » 

Проблема скорее всего в том, что php скомпилирован без поддержки mysql, потому как других проблем не должно быть.

P.S. Не используйте 2-й апач. Сами разработчики не рекомендуют его использовать в связке с php.
Записан
Skubent
Гость
« Ответ #13 : 22-04-2004 06:31 » 

bst7, не поверишь, в первом принте опять апострофа не хвататет Улыбаюсь.  Про опции сборки php что скажешь ?

Fireworm, у меня на втором крутится, все в порядке.
Записан
Fireworm
Гость
« Ответ #14 : 22-04-2004 06:47 » 

Skubent, Все зависит от скрипта и модулей, которые используеш... ну и от нагрузки... Попробуй дать стресс на сервер хотябы в 1 запрос в секунду.
Записан
Skubent
Гость
« Ответ #15 : 22-04-2004 07:41 » 

Fireworm, 700-1200 хостов в час, устраивает ? Улыбаюсь Апач практически по умолчанию, мускля и php - совсем по умолчанию. Но это все к теме не относится, в нашем случае
а) php все-таки стартует
б) не может присоединиться с мускле, причем я все больше подозреваю, что из-за синтаксических ошибок написания Улыбаюсь
в) апач тут ни при чем Улыбаюсь
Записан
bst7
Гость
« Ответ #16 : 22-04-2004 09:12 » 

Вот исходник из официального руководства с php.net
запустил - результат прежний, поэтому дело не в синтаксисе.
<?php
    $link = mysql_pconnect("localhost", "user", "")
        or die("Could not connect: " . mysql_error());
    if (mysql_create_db("my_db")) {
        print ("Database created successfully\n");
    } else {
        printf ("Error creating database: %s\n", mysql_error());
    }
?>
Попробую установить последние версии MySQL и php.
Записан
Мелифаро
Гость
« Ответ #17 : 28-05-2004 15:46 » 

Может быть проблемма в том, что ты пишешь:
$link = mysql_pconnect("localhost", "user", "") ;

А не слудующее:
$link = mysql_pconnect("localhost", "root", "") ;

По крайней мере под виндой по умолчанию база имеет такого ползователя с админовскими правами
Записан
MOPO3
Ай да дэдушка! Вах...
Команда клуба

lt
Offline Offline
Пол: Мужской
Холадна аднака!


WWW
« Ответ #18 : 31-05-2004 04:24 » 

Попробуй просто создать такой файл :
Код:
<?php
print phpinfo();
?>


И запусти его. Если апач и пхп корректно настроен, увидиш список настроек ПХП. Ищи секцию MySQL. Если её нет значит ПХП откомпилен без поддержки мускула. На моей практике ошибки типа  fatal error call undefined function "ля ля ля" выдаются только если не подключен модуль соответствующий или в коде присутствует имя пользовательской функции, которая нигде в коде не определена.
« Последнее редактирование: 25-11-2007 17:02 от Алексей1153++ » Записан

MCP, MCAD, MCTS:Win, MCTS:Web
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines