| Uutiset | Koodikirjasto | Wiki | Keskustelut | FAQ | Info |
Keskustelut - PHP - Kirjautumin MySQL-palvelimelle ei toimi?TapaniS 22:51 12.1.10 Ihan alkumetreillä tuli tällainen, osaisikohan joku neuvoa? Asennettu: php-5.3.1-Win32-VC6-x86.zip apache_2.0.63-win32-x86-no_ssl.msi mysql-5.1.42-win32.msi Tietokantaan syötetty command line clientin kautta uusi käyttäjä täysin oikeuksin sekä test-database ja siellä on dataa. Toimii: PHP Ei toimi: PHP <?php mysql_pconnect("localhost", "User1","Passw1"); mysql_select_db("test"); $result = mysql_query("SELECT * FROM taulu"); while ($rivi = mysql_fetch_row ($result)) { echo $rivi['luku']; } ?> Virheilmoitus: WWW-sivusto ei voi näyttää sivua (HTTP 500) Todennäköisimmät syyt: WWW-sivustoa huolletaan. WWW-sivustossa on ohjelmointivirhe. Ei toimi: PHP Virheilmoitus: VIRHE: could not find driver eis 00:59 13.1.10 Kannattaiskohan laittaa virheilmoitukset näkyviin sekä ehkä myös tarkistaa paluuarvot.. tsuriga 01:24 13.1.10 Ihan näin niinko mielenkiinnosta: näinkö siellä sovelluskehityskurssilla opetetaan? TapaniS 08:03 13.1.10 Virheilmoitukset on näkyvissä ja sovelluskehityskurssi alkaa vasta kuun loppupuolella, jos siihen on tullut riittävästi ilmoittautuneita ... eis 12:47 13.1.10 Eivät nuo mitä laitoit ole PHP:n virheilmoituksia. Jos PHP:n virheilmoitukset ovat näkyvissä, voisit pistää ne tämän threadin yhteyteen. tino 18:06 13.1.10 PDO:n osalta: http://fi.php.net/manual/en/pdo.installation.php Eli tarkista php.ini:stä, että siellä on tällaiset rivit (eivätkä ole kommentoituna): extension=php_pdo.dll extension=php_pdo_mysql.dll Ja toki myös, että nuo ko. tiedostot löytyvät ja ovat oikeissa paikoissaan. mysql_pconnectin voinet unohtaa, sitä ei kannata käyttää jos ei homma ole täysin hanskassa ja tuo ole tietoinen valinta. mysql_connect sen sijaan on käypä. Muuta on paha sanoa, kannattaa tutkia virhelogeja läpi niin pääsee paremmin selville mistä on kyse. Lisäksi vielä koodistasi: PHP Tuo ei koskaan tulosta mitään tuollaisena. Ks. mysql_fetch_row vs. mysql_fetch_assoc TapaniS 22:17 13.1.10 Monet kiitokset hyvistä neuvoista, nyt alkaa pikkuhiljaa löytymään vikaa ... Warning: main(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Helsinki' for '2.0/no DST' instead in C:\Program Files\Apache Group\Apache2\htdocs\mysql-simple3.php on line 3 Fatal error: Call to undefined function mysql_connect() in C:\Program Files\Apache Group\Apache2\htdocs\mysql-simple3.php on line 3 Sama teksti tuli myös mysql_pconnect :n kanssa. Täytyy katsoa oikea syntaksi jostakin ... Lisäksi pitää perehtyä tuohon PDO:hon vielä tarkemmin. php_pdo.dll ainakin puuttuu koneeltani. Lisäsin php.ini tiedostoon virhelogin ja extension=php_pdo_mysql.dll. Tämä ainakin löytyy! Tuoltapa muuten huomasinkin heti, että php_pdo_mysql.dll ei löydy, polku on annettu väärin! Jostakin syystä noita etsitään hakemistosta C:\php5\ , kun pitäisi olla C:\php\ext. No täytyypä tutkia tätäkin ... Menee hiukan aikaa näiden kanssa, laitan infoa, kun asia etenee. Muutoin näyttää selvältä, mutta osaako joku vielä tietää tuota "timezone" -herjaa? Miten tuohon pitää suhtautua? editoitu: 22:23 13.1.10 tsuriga 22:22 13.1.10 -php.inistä löytyy myös asetus extension_dir -myös php_mysql pitää vääntää päälle erikseen vitosversiossa -kuten virheilmossa neuvotaankin, aikavyöhyke pitää asettaa itte. php.inissä vaikkapa date.timezone = "Europe/Helsinki" tai sitten koodissa date_default_timezone_set("Europe/Helsinki"); tai sitten htaccessiin php_valueta editoitu: 18:15 16.1.10 TapaniS 22:33 14.1.10 tsurigan antamat kolme kohtaa rustasin kuntoon ja nyt toimii! En ole vielä tuohon PDO:hon koskenut. Mikähän tämä PDO oikein on? Kiitokset vielä hyvistä neuvoista! ---- Edit: Jostakin lueskelin, että tuo PDO-moduli olisi uusimmissa php-paketeissa sisäänrakennettuna, eikä sitä tarvitse enää erikseen aktivoida tai asennella. tino 13:38 20.1.10 Tuolta saat lisäinfoa: http://fi.php.net/manual/en/book.pdo.php The PHP Data Objects (PDO) extension defines a lightweight, consistent interface for accessing databases in PHP. PDO provides a data-access abstraction layer, which means that, regardless of which database you're using, you use the same functions to issue queries and fetch data. PDO does not provide a database abstraction; it doesn't rewrite SQL or emulate missing features. You should use a full-blown abstraction layer if you need that facility. |
![]() Haku
|