Kezdőoldal » Számítástechnika » Programozás » Ezekben a sorokban mi a...

Ezekben a sorokban mi a hibás? (PHP, SQL)

Figyelt kérdés

<?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()


2014. aug. 21. 22:51
1 2
 1/11 anonim ***** válasza:
100%
Váó..annyit könnyíthettél volna, hogy melyik sorra írja a hibát :D
2014. aug. 21. 23:03
Hasznos számodra ez a válasz?
 2/11 anonim ***** válasza:
Amúgy használj mysqli-t...biztonságosabb, és könnyebb is kezelni.
2014. aug. 21. 23:04
Hasznos számodra ez a válasz?
 3/11 anonim ***** válasza:

Utolsó sorba ez mi?

}else{

2014. aug. 21. 23:17
Hasznos számodra ez a válasz?
 4/11 anonim ***** válasza:

É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.

2014. aug. 21. 23:26
Hasznos számodra ez a válasz?
 5/11 anonim ***** válasza:

"Utolsó sorba ez mi? }else{"


Ugye attól, hogy bezárta a php-t, még utána kinyithatja :D

2014. aug. 21. 23:36
Hasznos számodra ez a válasz?
 6/11 anonim ***** válasza:

> 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

2014. aug. 22. 00:16
Hasznos számodra ez a válasz?
 7/11 anonim ***** válasza:

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.

2014. aug. 22. 01:44
Hasznos számodra ez a válasz?
 8/11 A kérdező kommentje:

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

2014. aug. 22. 08:51
 9/11 anonim ***** válasza:

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.)

2014. aug. 22. 09:02
Hasznos számodra ez a válasz?
 10/11 anonim ***** válasza:
mysql_error()-al ki is írathatnád a hibát.
2014. aug. 22. 09:48
Hasznos számodra ez a válasz?
1 2

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!