[ eukalydius @ 27.07.2006. 09:08 ] @
Postovanje

Imam jedno cisto tehnicko pitanje vezano za mySQL i PHP. Naime, imam problema da se konektujem na bazu, problem tehnicke prirode, programske, pa se nadam da mi Vi mozete pomoci.

Posto sam prilicni novajlija sa mySQL-om i PHP-om, postavio sam probnu verziju jednostavnog upisa i citanja podataka iz baze na svoj sajt. Sve to ja sam odradio i testirao na svom kucnom serveru (Apache), i na tom svom kucnom serveru napravio sam identicnu bazu, tabelu, korisnicko ime, sifru…. sve potpuno identicno bazi koju mi vi hostujete, kako bih stvari mogao najpre da kod kuce proverim a onda bez ikakvih izmena postavim na server.

Problem je medjutim izgleda u tome sto su moji php i mysql verzija 5, a kod vas je verzija 4.1.19. Ja sam za uspostavljanje veze sa bazom podataka koristio sledeci programski kod



@ $baza = new mysqli('localhost' , 'moj_user, 'moj_pass', 'naziv_baze');

if (mysqli_connect_errno()){
echo 'doslo je do greske prilikom pokusaja konekcije sa bazom podataka';
echo 'molimo pokusajte ponovo';
exit;
}
/////////////////////////////////////////////////
$upit = "insert into utisci values
(null, '".$ime."', '".$email."', '".$vreme."', '".$ocena."', '".$svidja."', '".$nesvidja."', '".$komentari."')";

$obrada = $baza->query($upit);

if($obrada){
echo '<h1> Podaci su uspesno zabelezeni. Hvala! </h1>';
}
else {
echo ' podaci nisu zabelezeni, doslo je do greske';
}


Dakle to odlicno funkcionise na mom kucnom serveru, medjutim na mom sajtu to ne daje nikakve rezultate, jednostavno se nista ne desi, cak ni bilo kakva prijava greske.

Pa sam se setio da je to verovatno zbog objekta koji sam ja upotrebio (new mysqli) a koji verovatno nije podrzan u verziji mySQL 4.1.19

pogledao sam u Cpanel-u, i video sledece objasnjenje:


$dbh=mysql_connect ("localhost", "dachonix_dachoni", "<PASSWORD HERE>") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("dachonix_dachabaza");





dakle da tako treba da se konektujem, pa sam svoj predjasnji kod prepravio na



@ $baza = mysql_connect ("localhost", "dachonix_dachoni", "moj_pass” ) or die (‘greska pri povezivanju na server: ' . mysql_error());
mysql_select_db ("dachonix_dachabaza");


a nista drugi nisam menjao. Medjutim, kada dodje do izvrsavanja upita ($obrada = $baza->query($upit); ) , izbacuje sledecu poruku

Fatal error: Call to a member function on a non-object in <putanja fajla i broj reda>


pitanje: U KOJOJ FORMI DA SE POVEZEM NA BAZU I POSTAVIM UPIT KAKO BI SVE RADILO KAKO TREBA?



Hvala!!!
[ broker @ 27.07.2006. 09:54 ] @
Verovatno ti u definiciji tog objekta $baza opet ima nesto nekompatibilno sa PHP4.
[ eukalydius @ 27.07.2006. 11:00 ] @
pa ja sam pokusao i sa

mysql_connect(........);

verzijom, tamo uopste nisam ni definisao varijabilu $baza, ali mi jednostavno nikako ne funkcionise. Eto ima li neko od vas konkretan kod za najjednostavniji upis i citanje podataka iz baze na muSQL serveru verzije 4.1.19 da vidim kako to funkcionise, pa da pokusam da izmenim svoj kod.. .???
[ sale83 @ 27.07.2006. 11:32 ] @
http://au2.php.net/manual/en/ref.mysql.php

http://au2.php.net/manual/en/function.mysql-query.php
http://au2.php.net/manual/en/function.mysql-connect.php
http://au2.php.net/manual/en/function.mysql-db-query.php
http://au2.php.net/manual/en/function.mysql-insert-id.php
...