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... (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Jeszcze raz ściągnąłem zestaw bibliotek dla php 5.0.2 ale dalej to samo... (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) Ogłupieć można :-( Proszę o jakąś poradę jak rozwiązać ten problem. Pozdrawiam. |
|
|
|
![]() |
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. |
|
|
|
*_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
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 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 05:59 |