Ezekben a sorokban mi a hibás? (PHP, SQL)
<?php
include("kapcsolat.php");
//VALOS FELHASZNALO
function valosf($felhasznalo)
{
if(preg_match('/^[a-zA-Z0-9]{4,}$/', $felhasznalo)) {
RETURN true;
}else
{
return false ;
}
}
//VALOS EMAIL
function email($email1)
{
if (!filter_var($email1,FILTER_VALIDATE_EMAIL)) {
return false;
}else
{
return true;
}
}
echo '<pre>';
print_r($_POST);
echo '</pre>';
if (isset($_POST ['regi']) AND $_POST ['regi'] =="igen") {
$felhasznalo = $_POST['felhasznalo'];
$nickname = $_POST['nickname'];
$jelszo1 = $_POST['jelszo1'];
$jelszo2 = $_POST['jelszo2'];
$email1 = $_POST['email1'];
$email2 = $_POST['email2'];
$uzenet="";
$statusz = "OK";
//FELHASZNALO ELLENORZESEK
if(empty($felhasznalo)) {
$uzenet=$uzenet."Nem adtál meg felhasználó nevet.<br/>";
$statusz= "HIBA";
} else {
if (!valosf($felhasznalo)){
$uzenet=$uzenet."A felhasználónév csak ezekből a karakterekből állhat: A-Z, a-z, 0-9<br/>";
$statusz= "HIBA";
}
if (strlen($felhasznalo) < 5){
$uzenet=$uzenet."A felhasználónév túl rövid min. 5 karakter.<br/>";
$statusz= "HIBA";
}
if (strlen($felhasznalo) > 20){
$uzenet=$uzenet."A felhasználónév túl hosszú max. 20 karakter.<br/>";
$statusz= "HIBA";
}
}
if(mysql_num_rows(mysql_query("SELECT felhasznalo FROM regisztracio WHERE felhasznalo = '$felhasznalo'"))){
$uzenet=$uzenet."$felhasznalo már létezik. Kérjük, próbálj meg egy másikat<br/>";
$statusz= "HIBA";
}
//JELSZO ELLENORZES
if (empty($jelszo1)) {
$uzenet=$uzenet."Nem adtál meg jelszót.<br/>";
$statusz= "HIBA";
}else{
if($jelszo1 != $jelszo2){
$uzenet=$uzenet."A két jelszó nem egyforma<br/>";
$statusz= "HIBA";
}
if (strlen($jelszo1) < 5){
$uzenet=$uzenet."A jelszó túl rövid min. 5 karakter.<br/>";
$statusz= "HIBA";
}
if (strlen($jelszo1) > 20){
$uzenet=$uzenet."Bocsi, A jelszó túl hosszú max. 20 karakter.<br/>";
$statusz= "HIBA";}
}
//EMAIL ELLENORZES
if (empty($email1)) {
$uzenet=$uzenet."Nem adtál meg emailt.<br/>";
$statusz= "HIBA";
}
else{
if (!email($email1)){
$uzenet=$uzenet."Valótlan email cim.<br/>";
$statusz= "HIBA";
}
if($email1 != $email2){
$uzenet=$uzenet."A két email cim nem egyforma<br/>";
$statusz= "HIBA";
}
}
$jelszo = md5("$jelszo1");
$email = $email1;
if(mysql_num_rows(mysql_query("SELECT email FROM regisztracio WHERE email = '$email1'"))){
$uzenet=$uzenet."$email1 cim már létezik. Kérjük, próbálj meg egy másikat<br/>";
$statusz= "HIBA";
}
if($statusz<>"OK"){
echo"<div style='text-color:red;'> $uzenet</div><br/> <input type='button' value='Vissza' onClick='history.go(-1)'><br/>";
}else{
$sql=("INSERT INTO regisztracio (felhasznalo,jelszo,email,regisztralt) VALUES('$felhasznalo','$jelszo','$email',NOW())");
echo $sql;
$parancs=mysql_query($sql) or die(mysql_error() . $sql);
echo"$felhasznalo sikeresen regisztráltál.<br/> <a href='regisztracio.php'>Regisztracio</a>";
}
}else{
?>
Ezeket a hibákat írja, de nem tudom mért
:mysql_error()
mysql_num_rows()
mysql_query()
És egyébként a mysql() fv-ek PHP5.5-től nem is használhatóak. Csak mysqli().
Ha 5.5 alatt használsz, és még mindig nem találtál rá a hibára, akkor tényleg jól jönne majd egy szám, hogy melyik sorra jelez hibát. Úgy könnyebb lenne nekiindulni, mint hogy most átbogarásszam az egészet.
"Utolsó sorba ez mi? }else{"
Ugye attól, hogy bezárta a php-t, még utána kinyithatja :D
> Ezeket a hibákat írja, de nem tudom mért
(A) Olvasd végig a hibaüzenetet
(B) Másold be AZ EGÉSZET és mi elolvassuk
Biztos nem ez a hibaüzenet.
Nem értem, hogy várod el, hogy segítsenek, amikor se nem másolod be az egész kódot, de még a hibaüzenetet sem.
ezekre a sorokra írja :
if(mysql_num_rows(mysql_query("SELECT felhasznalo FROM regisztracio WHERE felhasznalo = '$felhasznalo'"))){
if(mysql_num_rows(mysql_query("SELECT email FROM regisztracio WHERE email = '$email1'"))){
ezt a hibát:warning mysql_num_rows(): supplied arguament is not valid MySQL results resource
Létrejön a kapcsolat?
mysql_connect(...)
mysql_select_db(...)
Jó lenne külön szedni:
$result = mysql_query("SELECT email FROM regisztracio WHERE email = '$email1'");
if (mysql_num_rows($result)) {...}
Például...
Egyébként a lekérdezés nem sikerül, mert:
- nincs kapcsolat a MySQL szerverrel
- nem létezik a tábla
- egyéb SQL hiba (elírt mezőnév, stb.)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!