Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Call to undefined function mysql_connect(), O co chodzi????
*_ENIGMA
post 20.12.2004, 23:53:37
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 1.11.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Witajcie...

Najpierw dane oprogramowania:

php 5.0.2
Apache 2.0.46
MySQL 3.23.58

Po połączeniu ze stroną otrzymuję taki komunikat:

Kod
Fatal error: Call to undefined function mysql_connect() in C:\apache\htdocs\test.php on line 2


Baza danych działa w porządku, bo mogę w lini komend logować się, dodawać bazy, tabele itp.

Możliwe, że coś jest nie tak skonfigurowane w php czy na Apache?
(Brakuje jakiegoś modułu?)

Oto kod źródłowy pliku php (wzięty zresztą z Manuala):

Kod
<?php
   $link = mysql_connect('localhost', 'phpuser', 'phppass')
   or die('Nie można się połączyć: ' . mysql_error());
   print ('Połączenie nawiązane');
   mysql_close($link);
?>



W pliku php.ini aktywowałem bibliotekę php_mysql.dll...

Niestety po uruchomieniu Apache wyskakuje okienko dialogowe z informacją:

Cytat
php Startup: Unable to load dynamic library 'C:\php\ext\php_mysql.dll' - Jeden z plików bibliotek potrzebnych do uruchomienia
tej aplikacji nie może zostać znaleziony.


Najlepsze jest to, że mam tę bibiliotekę php_mysql.dll w folderze C:\php\ext... questionmark.gifquestionmark.gif
Jeszcze raz ściągnąłem zestaw bibliotek dla php 5.0.2 ale dalej to samo... exclamation.gif

Ogłupieć można :-(


Proszę o jakąś poradę jak rozwiązać ten problem.

Pozdrawiam.


--------------------
EnigmaCretu.Com >>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Berkovits
post 1.09.2007, 17:43:34
Post #2





Grupa: Zarejestrowani
Postów: 39
Pomógł: 0
Dołączył: 25.08.2007

Ostrzeżenie: (0%)
-----


Wiem, ze dopisuje sie do (dosc) starego tematu. Trafilem tu przeszukujac siec, by znalezc rozw. moich problemow. Moze kiedys komus pomoze to, co napisze, gdy bedzie szukal w sieci pomocy. Opisze 3 problemy, na ktore sie natknalem i sposoby, za pomoca ktorych je rozwiazalem. Zwiazane byly z instalacja MySQL'a i powiazania go z parserem PHP, w szczegolnosci z dolaczeniem biblioteki PDO. Do dziela!

Katalogi:
Serwer Apache: C:\Program Files\Server\Apache2.2
Serwer MySQL: C:\Program Files\Server\MySQL5.0
Parser PHP: C:\Program Files\Server\PHP5
Moje strony: D:\www (domyslnie bylo c:\..Apache2.2\htdocs)
______________________________________________________

Blad podczas instalowania MySQL'a. Podczas uruchomienia programu Server Instance Configuration Wizard, po kliknieciu przycisku [execute] pojawia sie blad:
Error:0 cannot create windows service for MySQL.
Problem u mnie polegal na tym, ze juz wczesniej probowalem zainstalowac MySQL, jako skladnik pakietu Krasnal, jednak po deinstalacji go, usluga MySQL'a byla wciaz dostepna. Czy tak jest mozna sprawdzic nastepujaco:
start->panel sterowania->narzedzia administracyjne->uslugi. Jesli na liscie jest juz MySQL, to nalezy go usunac.
Mozna to zrobic podobno tak: start->Uruchom..., wpisac
sc delete mysql, ale ja, zanim to poznalem, zrobilem inaczej:
Uruchomilem start->uruchom...: regedit, w ktorym znalazlem:
HKEY_LOCAL_MACHINE->SYSTEM->CurrentControlSet->Services->MySQL i usunalem to.
Po restarcie windowsa uslugi MySQL juz nie bylo. Wtedy mozna ponownie uruchomic Server Instance Configuration Wizard.
____________________
Wszystko juz zainstalowane, trzeba skonfigurowac.

Blad: Fatal error: Class 'PDO' not found in D:\www\test\sql.php on line 15
Linia 15: $pdo = new PDO('mysql:host=localhost;port=3306;dbname=test','root','root');

Rozwiazanie: Nalezy (nie tylko do tego, ale, by uzywac mysql'a bez problemow w pliku php.ini napisac (a raczej odkomentowac przygotowane juz linijki):

a )
extension=php_gd2.dll <-- nie wiem do czego to jest, chyba tu niepotrzebne
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo.dll
extension=php_pdo_mysql.dll

b ) Napisac: extension_dir = "C:/Program Files/Server/PHP5/ext"

c ) W pliku httpd.conf (konfiguracja Apache'a) wpisac sciezke do pliku php.ini:
PHPIniDir "C:/Program Files/Server/PHP5"

Brak tych rzeczy widac uruchamiajac skrypt <?php phpinfo(); ?>:
c ): Loaded Configuration File (none)

b ): extension_dir C:\php5 (<-tak u mnie zareagowalo, czyli zle) Jesli nie ma c), to chyba wszelkie ustawienia w
php.ini nie sa widoczne

a ): nie wiem, jak to sie objawia w php_info();
___________________________________

Blad: Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in
D:\www\test\sql.php:15 Stack trace: #0 D:\www\test\sql.php(15): PDO->__construct('mysql:host=loca...', 'root', 'root') #1 {main} thrown in D:\www\test\sql.php on line 15

Linia 15: $pdo = new PDO('mysql:host=localhost;port=3306;dbname=test','root','root');

Blad: Call to undefined function mysql_connect() in D:\www\test\sql2.php on line 3
Linia 3: mysql_connect('localhost:3306', 'root', 'root');

Rozwiazanie: Zrobic tak, by plik libmysql.dll byl widoczny dla systemu. Sluzy do tego chyba
zmienna systemowa PATH (jak do niej dodac sciezke do c:/...php5 - nie wiem). Zamiast tego mozna (nienajelegantsze rozwiazanie, ale ja tak zrobilem) wrzucic ten plik do np.
c:/windows, albo do c:/windows/system32.

Brak tego objawia sie (u mnie tak bylo) za pomoca skryptu <?php phpinfo() ?> nastepujaco:
PDO support: enabled
PDO drivers: no value <---

Ponadto z dolaczonym (jak powyzej) libmysql.dll pojawia sie ramka:
>         pdo_mysql
> PDO Driver for MySQL, client library version 5.0.37, czego nie ma bez libmysql.dll.

...................

Do badania, co jest nie tak, moze sie przydac skrypt:
<?php $t=get_declared_classes(); foreach($t as $el) echo $el.'<br/>'; ?>

Wyswietla m.in., (bez libmysql.dll lub z nia):
PDOException
PDO
PDOStatement
PDORow

Jednak bez pliku libmysql.dll nie ma nastepujacych pozycji, ktore chyba powinny byc:
mysqli_sql_exception
mysqli_driver
mysqli
mysqli_warning
mysqli_result
mysqli_stmt
_____________________________________________________
Uwaga: Po zmianach pamietac o restartowaniu serwera Apache.

To by bylo na tyle.
Go to the top of the page
+Quote Post

Posty w temacie
- *_ENIGMA   Call to undefined function mysql_connect()   20.12.2004, 23:53:37
- - eS...   hmmm ja zawsze robie tak i dziala [PHP] pobierz, p...   21.12.2004, 00:02:30
- - DeyV   Cytat("install.txt")  php_mysql.dll...   21.12.2004, 02:36:05
- - adwen   Zawsze musisz zrobić dwie rzeczy w pliku php.ini: ...   21.06.2007, 22:39:39
- - webdicepl   ~adwen mylisz bazy, nie mssql.dll tylko mysql.dll   21.06.2007, 23:20:23
- - go_lab   gdzie szukać php.ini? Mam na kompie kilka Apacheó...   5.07.2007, 00:24:45
- - cornholio666   Chciałem coś dorzucić może się komuś przyda. Otóż ...   30.07.2007, 09:57:05
- - Berkovits   Wiem, ze dopisuje sie do (dosc) starego tematu. Tr...   1.09.2007, 17:43:34
- - diablohero   Bardzo pomocny post, tyle ze u mnie ciagle jest to...   5.08.2008, 18:50:09
- - cartoon_20   Ja także miałem problem z błędem: Call to undefine...   22.08.2008, 10:20:21
- - Berkovits   Właśnie instalowalem sobie po raz kolejny Apache, ...   29.08.2008, 02:23:16
- - CriS182   witam serdecznie użytkowników!!;D Z góry p...   15.10.2012, 13:01:49
- - nospor   "hasło, które podałeś przy instalacji" N...   15.10.2012, 13:05:37
- - CriS182   glupota ludzka nie ma granic!! przepraszam...   15.10.2012, 13:13:33
- - Elandir   No dobra też mam problem z tym komunikatem. Wpis...   12.11.2015, 14:46:43
- - Crozin   1. Wchodzimy na stronę dokumentacji: http://php.ne...   12.11.2015, 15:07:58
- - Elandir   Użyłem mysqli_connect Kod$link = mysqli_co...   13.11.2015, 08:03:37
- - Pyton_000   Wyświetl sobie phpint(); i szukaj Mysqli,PDO I wo...   13.11.2015, 08:05:33
|- - Elandir   Cytat(Pyton_000 @ 13.11.2015, 08:05:3...   13.11.2015, 11:57:42
- - nospor   Skoro to nie ty instalowales, to skad wiesz ze uzy...   13.11.2015, 12:16:07
- - Elandir   Jak pisałem wcześniej z konsoli mogę tworzyć bazy,...   13.11.2015, 12:20:57
- - nospor   To napisz prosze jeszcze raz jaki dokladnie teraz ...   13.11.2015, 12:26:49
- - Elandir   Dla kodu: Kod<?php mysqli_connect('lo...   13.11.2015, 12:31:13
- - nospor   Nie masz zainstalowanego modulu MYSQLI. Dorwij te...   13.11.2015, 12:35:53
- - Elandir   PDO drivers no value Więc chyba będę musiał go z...   13.11.2015, 12:40:15
- - phpion   mysql_*, mysqli_*, a PDO to 3 całkiem różne sprawy...   13.11.2015, 12:48:00
- - nospor   CytatCo ciekawsze na "tradycyjnym" zapyt...   13.11.2015, 12:53:11


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 14:43