KumRusvelt Božidar Mirković Beograd, Srbija
Član broj: 248295 Poruke: 18 *.dynamic.isp.telekom.rs.
|
Da li neko može da mi objasni koji su mogući tipovi greške u kucanju php skripte kad je u pitanju izrada Web str.
za registraciju korisnika.
Dakle ukrartko ću opisati problem:
Kada u browseru pre nego unesem u polja registracije, a da bih proverio da li se pojavljuju greške posle
pritiska na submit javlja se sledeće upozorenje:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in
C:\xampp\htdocs\sajta\registracija.php on line 60
A kada i pored toga unesem u polja registracije javla se pored gore pomenutog upozorenja i sledeće:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the
right syntax to use near '' at line 1
Može mi neko sugerisati u čemu ja grešim.
ovako izgleda tabla:
CREATE TABLE `moja_baza`.`korisnici` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`ime` VARCHAR( 100 ) NOT NULL ,
`prezime` VARCHAR( 100 ) NOT NULL ,
`jmbg` BIGINT NOT NULL ,
`korisnickoime` VARCHAR( 100 ) NOT NULL ,
`sifra` VARCHAR( 100 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`ip` INT UNSIGNED NOT NULL ,
`pol` VARCHAR( 1 ) NOT NULL ,
`grad` VARCHAR( 100 ) NOT NULL ,
`postanskibroj` INT NOT NULL ,
`telefon` VARCHAR( 100 ) NOT NULL ,
`interesovanje` TEXT NOT NULL ,
`korisnickitip` ENUM( 'a', 'b', 'c' ) NOT NULL ,
`datumregistracije` DATETIME NOT NULL ,
`datumzadnjeposete` DATETIME NOT NULL ,
`emailaktivacija` ENUM( '0', '1' ) NOT NULL ,
UNIQUE (
`email`
)
) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_unicode_ci;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Skripta za konekciju (connect_to_mysql.php) izgleda ovako
<?php
$db_host = "localhost";
$db_username = "root";
$db_pass = "";
$db_moja_baza = "moja_baza";
@mysql_connect("$db_host","$db_username","$db_pass") or die("Konekcija nije uspostavljena");
@mysql_select_db("$db_moja_baza") or die("Baza nije dostupna");
mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET COLLATION_CONNECTION='utf8_general_ci'");
?>
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Napomena: Pre ovoga ide filtriranje upotrebom stripslashes sa strip_tagom
//Konekcija na bazu podataka
require_once "scripts/connect_to_mysql.php";
$emailCHecker = mysql_real_escape_string($email1);
//U bazi podataka duplo podešavanje e-mail za potvrdu za upotrebu dole u korišćenju greškama, ako je email već ranije unet u bazu podataka.
$sql_email_check = mysql_query("SELECT email FROM korisnici WHERE email='$CHecker'");
$email_check = mysql_num_rows($sql_email_check);
//Greška rukovanje za podatke koji nedostaju
if ((!$ime) || (!$prezime) || (!$jmbg) || (!$pol) || (!$grad) || (!$postanskibroj) || (!$telefon) || (!$email1) || (!$email2) || (!$pass1) || (!$pass2)) {
$errorMsg = 'GREŠKA: Niste dostavili potrebne informacije:<br/><br/>';
if(!$ime){
$errorMsg .= ' *Ime<br/>';
}
if(!$prezime){
$errorMsg .= ' *Prezime<br/>';
}
if(!$jmbg){
$errorMsg .= ' *JMBG<br/>';
}
if(!$pol){
$errorMsg .= ' *Označite Pol<br/>';
}
if(!$grad){
$errorMsg .= ' *Označite Grad<br/>';
}
if(!$postanskibroj){
$errorMsg .= ' *Vaš poštanski broj<br/>';
}
if(!$telefon){
$errorMsg .= ' *Vaš telefon<br/>';
}
if(!$email1){
$errorMsg .= ' *Unesite email<br/>';
}
if(!$email2){
$errorMsg .= ' *Potvrdite email<br/>';
}
if(!$pass1){
$errorMsg .= ' *Unesite šifru<br/>';
}
if(!$pass2){
$errorMsg .= ' *Potvrdite šifru<br/>';
}
}else if ($email1 != $email2) {
$errorMsg = 'GREŠKA: Polje email adrese trebate popuniti<br/>';
}else if ($pass1 != $pass2) {
$errorMsg = 'GREŠKA: Polje šifre trebate popuniti<br/>';
}else if ($email_check > 0){
$errorMsg = "<u>GREŠKA:</u><br/> Email koji ste upisali se već nalazi u bazi podataka, molimo vas izaberite drugu email adresu<br/>";
}else {//Korišćenje Grešaka je završeno u obradi podataka i dodati Korisnike u bazu podataka
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|