|
View:
New views
11 Messages
—
Rating Filter:
Alert me
|
|
|
mysql - meglévő user ellenőrzéseSziasztok!
Előre is elnézést kérek, hogy bemásolom az egész forráskódot, nem offolni szeretnék. A hibajelenség, amire választ várnék beviteli mező ellenőrzésekor fordul elő: ha adatbázisban még nem szereplő, és mellesleg korábban sem szerepelt user névvel csinálom a regisztrációt, akkor is jön hibaüzi, hogy már létezik az adott user DE!!!! a regisztráció sikeres, és adabázisba is ír, ami egyébként, ha bámely más adatot elrontok amit ellenőrzök nem történik meg, s akkor sem ír adatbázisba, ha valóban szerepel már a név az adatbázisban Minden segítséget előre is köszönök szépen! üdv!! <?php // mysql kapcsolódás $DBHOST = 'xxx'; $DBUSER = 'xxx'; $DBPWD = 'xxx'; $DB = 'xxx'; $kapcsolat= mysql_connect($DBHOST,$DBUSER,$DBPWD); if(!$kapcsolat) die("Nem lehet kapcsolódni".mysql_error()); mysql_select_db ($DB) or die ("Nem sikerült az adatbázis kiválasztása."); mysql_query("set names utf8"); //beviteli adatok ellenőrzése function regellenorz($adatok){ $msg = ""; if($adatok['user'] == "" | $adatok['mail'] == "" | $adatok['tel'] == "" | $adatok['pass'] == "") { $msg .= 'Minden mezõ kitöltése kötelezõ!<br>'; } if(strlen($_POST['user']) < 5) { $msg .= 'Legalább 5 karakter legyen a felhasználó név!<br>'; } if($adatok['mail'] == (!ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$",$adatok['mail']))) { $msg .= 'Hibás az e-mail cím!<br>'; } if(mysql_num_rows(mysql_query("SELECT USER FROM ADATBFELH WHERE (USER='".$adatok['user']."')")) > 0) { $msg .= 'Már regisztráltak ezzel a userrel!<br>'; } if($adatok['pass'] !== $adatok['pass2']) { $msg .= 'A jelszó megerősités hibás!<br>'; } // ha nem volt hiba if($msg == "") { $msg = "rendben"; } return $msg; } //adatbázisba írás if (isset($_POST['regisztralok'])){ if (regellenorz($_POST) == rendben){ $user = $_POST["user"]; $mail = $_POST["mail"]; $tel = $_POST["tel"]; $pass = $_POST["pass"]; $sql = "INSERT INTO ADATBFELH (USER, MAIL, TEL, PASS) values ('".$_POST['user']."', '".$_POST['mail']."', '".$_POST['tel']."', '".$_POST['pass']."')"; $mysqle = mysql_query($sql) or die(mysql_error()); $siker = "Sikeres regisztráció!"; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Adatbázis-hoz kapcsolódás - regisztrálás</title> <meta http-equiv="Content-Language" content="English" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="robots" content="noindex, nofollow" /> <meta name="googlebot" content="noindex, nofollow" /> <link rel="stylesheet" type="text/css" href="style.css" media="screen" /> </head> <body> <div id="wrap"> <div id="top"> </div> <div id="header"> <h1>PHP</h1> <h2></h2> </div> <div id="menu"> </div> <div id="content"> <div class="right"> <h1>Regisztrálj!</h1> <br /> <br /> <form action="adatbazis_regisztralas.php" method="post"> <strong>Felhasználó név:<strong /> <input type="text" name="user"> <br /> <br /> <strong>E-mail cím:<strong /> <input type="text" name="mail"> <br /> <br /> <strong>Telefonszám(mobil):<strong /> <input type="text" name="tel"> <br /> <br /> <strong>Jelszó:<strong /> <input type="password" name="pass"> <br /> <br /> <strong>Jelszó még egyszer:<strong /> <input type="password" name="pass2"> <br /> <br /> <input type="submit" name="regisztralok" value="Regisztrálok"> </form> <br /> <br /><br /> <strong><?php if (isset($_POST['regisztralok'])){ print regellenorz($_POST); print $siker; } ?> </strong> </div> <div class="left"> <ul> <strong><li><a href="adatbazis_belepes.php">»Bejelentkezés</a></li></strong> <ul> </ul> </div> <div style="clear: both;"> </div> </div> <div id="footer"> <p>KT</p> </div> <div id="bottom"> </div> </div> </body> </html> -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseKedves Tihamer, Nagyon nem vagyok kibekulve az ilyen koddal, de elso ranezesre ez igy biztosan nem jo: if (regellenorz($_POST) == rendben){ Nezz utanna az MVC-nek es probalj annak szellemeben dolgozni! Z > // ha nem volt hiba > if($msg == "") > { > $msg = "rendben"; > } > > return $msg; > > } > //adatbázisba írás > > > if (isset($_POST['regisztralok'])){ -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseSzia! Ha ez így van egy php fájlban, ahogy írtad, akkor ez szerintem
is nagyon átláthatatlanul megírt php kód. A függvényeket én nem javaslom, h itt
deklaráld, vagy egy teljesen külön fájlban (én ezt ajánlom), vagy legalább a
php fájl elején. Egy if-es szerkezeten belül semmiképpen se! A MySQL-hez való
csatlakozáshoz is írj egy külön függvényt, és azt használd minden egyes
fájlban, mert simán előfordulhat, h változik a jelszó, vagy a szerver neve, és
akkor csak 1 helyen kell változtatni. Az if (regellenorz(…)==”rendben”) sornál
nálad nincs idézőjel. Tegyél! Viktor From:
wl-phplista-bounces@... [mailto:wl-phplista-bounces@...] On
Behalf Of Tihamer Kovacs Sziasztok! -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseSzia! Köszönöm, kicsit kigyomlálom, kiteszem include-ba amit lehet. De a probléma továbbra is fennál. "ha adatbázisban még nem szereplő, és mellesleg korábban sem szerepelt user névvel csinálom a regisztrációt, akkor is jön hibaüzi, hogy már létezik az adott user DE!!!! a regisztráció sikeres, és adabázisba is ír, ami egyébként, ha bámely más adatot elrontok amit ellenőrzök nem történik meg, s akkor sem ír adatbázisba, ha valóban szerepel már a név az adatbázisban" esetleg erre megoldást tudtok? üdv!! 2008/7/22 Mizsei Viktor <kev-in@...>:
-- Ez az üzenet, s bármely melléklete bizalmas információkat tartalmazhat és kizárólag a címzettnek szól. Amennyiben nem Ön ennek az üzenetnek a címzettje, kérjük azonnal értesítse a feladót, s az üzenetet törölje a rendszeréből. This message and any attachment may be confidential and intended exclusively for the addressee. If you are not the intended addressee please notify the sender immediately and delete this message and any attachment from your system. Kovács Tihamér www.keresobarat.com -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseOn Tue, 22 Jul 2008 17:47:39 +0200, "Tihamer Kovacs"
<kovacstihamer@...> wrote: >De a probléma továbbra is fennál. > > if(mysql_num_rows(mysql_query("SELECT USER FROM ADATBFELH WHERE >(USER='".$adatok['user']."')")) > 0) > { heyett ...(USER='".$adatok['user']."')")) !== false) kk. -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzésesajnos nem megy !==false -szal sem
>1 gyel megy, de ugyanúgy adatbázisba írja az új felhasználót, ha mindene megegyezik, akkor is (id persze nem, de felh név és jelszó igen)
2008/7/22 kk <kokabox@...>:
-- Ez az üzenet, s bármely melléklete bizalmas információkat tartalmazhat és kizárólag a címzettnek szól. Amennyiben nem Ön ennek az üzenetnek a címzettje, kérjük azonnal értesítse a feladót, s az üzenetet törölje a rendszeréből. This message and any attachment may be confidential and intended exclusively for the addressee. If you are not the intended addressee please notify the sender immediately and delete this message and any attachment from your system. Kovács Tihamér www.keresobarat.com -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseOn Tue, 22 Jul 2008 21:01:30 +0200, "Tihamer Kovacs"
<kovacstihamer@...> wrote: >sajnos nem megy !==false -szal sem >>1 gyel megy, de ugyanúgy adatbázisba írja az új felhasználót, ha mindene >megegyezik, akkor is (id persze nem, de felh név és jelszó igen) > > és igy? ...(USER='ilyen-user-biztos-nincs')")) > 0) kk. -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseHelló!
Arra gondoltál már, hogy = helyett LIKE kellene a szöveget tartalmazó mezőre? if(mysql_num_rows( mysql_query( "SELECT USER FROM ADATBFELH WHERE 'USER' LIKE '".$adatok['user']."';" )) > 0) Üdv: SzF 2008/7/23 kk <kokabox@...>: > On Tue, 22 Jul 2008 21:01:30 +0200, "Tihamer Kovacs" > <kovacstihamer@...> wrote: > >>sajnos nem megy !==false -szal sem >>>1 gyel megy, de ugyanúgy adatbázisba írja az új felhasználót, ha mindene >>megegyezik, akkor is (id persze nem, de felh név és jelszó igen) >> >> > és igy? > ...(USER='ilyen-user-biztos-nincs')")) > 0) > kk. > -- > Weblabor hírlevél: http://weblabor.hu/hirlevel > -- > wl-phplista (wl-phplista@...) levelezőlista > https://bors.hoszting.com/mailman/listinfo/wl-phplista > Keresheto archivum: http://weblabor.hu/kereses > -- > etikett: http://weblabor.hu/levlistak/illemszabaly > offlista: https://weblabor.hu/levlistak > Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseFerenc Szabó írta:
> Helló! > > Arra gondoltál már, hogy = helyett LIKE kellene a szöveget tartalmazó mezőre? > > if(mysql_num_rows( > mysql_query( > "SELECT USER FROM ADATBFELH WHERE 'USER' LIKE '".$adatok['user']."';" > )) > 0) Miért kellene like, ha nincsen % vagy _ benne mint wildcard? Teljes egyezőségre működik, sőt gyorsabb az = mint a like. -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzése> sőt gyorsabb az = mint a like.
Szerintem ha nincs benne sépci karakter, akkor nem lassabb a like. Üdv, Felhő -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
|
|
Re: mysql - meglévő user ellenőrzéseGergely Hodicska írta:
>> sőt gyorsabb az = mint a like. > Szerintem ha nincs benne sépci karakter, akkor nem lassabb a like. Tudok olyan esetet mondani, hogy igen. Pl mssql alatt procedúrában, ha egy kapott változóra like-olunk, akkor képtelen optimákolni az mssql, ugyanis nem tudja előre, mi lesz a változóban, lesz-e wildcard, ha lesz hol lesz, így indexeket sem tud használni rá. -- Weblabor hírlevél: http://weblabor.hu/hirlevel -- wl-phplista (wl-phplista@...) levelezőlista https://bors.hoszting.com/mailman/listinfo/wl-phplista Keresheto archivum: http://weblabor.hu/kereses -- etikett: http://weblabor.hu/levlistak/illemszabaly offlista: https://weblabor.hu/levlistak |
| Free Forum Powered by Nabble | Forum Help |