Mérei Tamás webdesigner

Tutorial: PHP – űrlapfeldolgozás

Szerző:   |   2011-01-28

Egyszerű regisztrációs űrlap, adatellenőrzés, és az adatok adatbázisba írása. Összesen 1 óra 13 perc.

CSS forráskód


body{
	font-family: "Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	background: #d9cb9e;
	color: #464237;
}
a {
	color: #dc3522;
	text-decoration: none;
}
p, h1, form, button{
	border: 0;
	margin: 0;
	padding: 0;
}
div#regform{
	margin: 0 auto;
	width: 400px;
	padding: 20px;
	border: solid 2px #c5b78a;
	background: #eee5c7;
	box-shadow: 3px 3px 4px #cbbc8d;
	-moz-box-shadow: 3px 3px 4px #cbbc8d;
	-webkit-box-shadow: 3px 3px 4px #cbbc8d;
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
}
div#regform h1 {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 8px;
}
div#regform p{
	font-size: 11px;
	margin-bottom: 20px;
	border-bottom: solid 1px #c5b78a;
	padding-bottom: 10px;
}
div#regform label{
	display: block;
	font-weight: bold;
	text-align: right;
	width: 150px;
	float: left;
}
div#regform small{
	color: #8e8462;
	display: block;
	font-size: 11px;
	font-weight: normal;
	text-align: right;
}
div#regform input[type="text"], div#regform input[type="password"], div#regform input[type="file"] {
	float: left;
	background: #fbf7e8;
	padding: 5px;
	border: 1px solid #c5b78a;
	width: 200px;
	margin: 2px 0 20px 10px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
div#regform input[type="submit"]{
	padding: 5px 20px;
	border: 0;
	margin-left: 160px;
	background: #374140;
	color: #fff;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
div.clear {
	clear: both;
}
div.message {
	background: #ddd;
	width: 420px;
	padding: 10px;
	margin: 10px auto;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	box-shadow: 3px 3px 4px #cbbc8d;
	-moz-box-shadow: 3px 3px 4px #cbbc8d;
	-webkit-box-shadow: 3px 3px 4px #cbbc8d;
}
div.error {
	background: url('../pics/icon_error.png') #dc3522 no-repeat center left;
	color: #fff;
	text-indent: 20px;
}
div.notice {
	background: #374140;
	color: #fff;
	text-indent: 20px;
	background: url('../pics/icon_notice.png') #374140 no-repeat center left;
}


table.get_array {
	width: 400px;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 10px auto;
}
table.get_array tr:nth-child(odd) {
	background: #f4f4f4;
}
table.get_array td {
	padding: 5px;
	border: 1px dotted #ddd;
	vertical-align: top;
}
table.get_array th {
	background: #ddd;
	text-align: left;
	padding: 5px;
	border: 1px solid #ddd;
}
table.get_array tr td table {
	margin: 0;
}
table.get_array tr td:first-child {
	width: 100px;
}

div#content {
	width: 440px;
	margin: 0 auto;
}

div#header {
	width: 400px;
	margin: 20px auto;
	background: #374140;
	padding: 20px;
	box-shadow: 3px 3px 4px #cbbc8d;
	-moz-box-shadow: 3px 3px 4px #cbbc8d;
	-webkit-box-shadow: 3px 3px 4px #cbbc8d;
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
}
div#header a {
	font-size: 15px;
	text-transform: uppercase;
	margin: 0 20px 0 0;
	color: #fff;
}
div#header a:hover {
	padding-bottom: 2px;
	border-bottom: 2px solid #5c6867;
}
div#navbar {
	width: 400px;
	margin: 0 auto;
	padding: 20px;
	text-align: right;
}

PHP


if(isset($_POST["form_submit"])) {

	$username = $_POST["username"];
	$password1 = $_POST["password1"];
	$password2 = $_POST["password2"];
	$email1 = $_POST["email1"];
	$email2 = $_POST["email2"];
	$username_regex = '/^[a-z0-9\_\-\.]{3,10}$/';
	$email_regex = '/^([A-z0-9\_\.\-]+)@([a-z0-9\_\-\.]+).([a-z]{2,})$/';
	$error_data = false;
	$error_avatar = false;
	
	if(!$username) {
		echo "<div class='message error'>Nincs megadva felhasználónév!</div>";
		$error_data = true;
	} elseif(strlen($username)<=2) {
		echo "<div class='message error'>A felhasználónév túl rövid!</div>";
		$error_data = true;
	} elseif(!preg_match($username_regex, $username)) {
		echo "<div class='message error'>A felhasználónév nem tartalmazhat nagybetűt / specális karaktert!</div>";
		$error_data = true;
	} else {
		$sql = @ new mysqli("localhost","root","root","user");
		if($sql->connect_errno) {
			echo "<div class='message error'>Adatbázis hiba: ", $sql->connect_errno." ".$sql->connect_error;
			exit();
		}
		$username = strip_tags($username);
		$username = addcslashes($username, "%'=`");
		$query = "SELECT `user_username` FROM `user` WHERE `user_username` = '".$username."'";
		$result = $sql->query($query) or die("Hiba!");
		if($result->num_rows>0) {
			echo "<div class='message error'>A felhasználónév foglalt!</div>";
			$error_data = true;
		}
		$sql->close();
	}
	
	if($password1) {
		if($password1!=$password2) {
			echo "<div class='message error'>A két jelszó nem egyezik!</div>";
			$error_data = true;
		} elseif(strlen($password1)<=3) {
			echo "<div class='message error'>A jelszó legalább 4 karakter kell, hogy legyen!</div>";
		}
	} else {
		echo "<div class='message error'>Nincs megadva jelszó!</div>";
		$error_data = true;
	}
	
	if($email1) {
		if($email1!=$email2) {
			echo "<div class='message error'>A két e-mail cím nem egyezik!</div>";
			$error_data = true;
		} elseif(!preg_match($email_regex, $email1)) {
			echo "<div class='message error'>Az e-mail cím nem megfelelő formátumú!</div>";			
			$error_data = true;
		} else {
			$sql = @ new mysqli("localhost","root","root","user");
			if($sql->connect_errno) {
				echo "<div class='message error'>Adatbázis hiba: ", $sql->connect_errno." ".$sql->connect_error;
				exit();
			}
			$query = "SELECT `user_email` FROM `user` WHERE `user_email` = '".$email1."'";
			$result = $sql->query($query) or die("Hiba!");
			if($result->num_rows>0) {
				echo "<div class='message error'>Ezzel az e-mail címmel már regisztráltak!</div>";
				$error_data = true;
			}
		}
	} else {
		echo "<div class='message error'>Nincs megadva e-mail cím!</div>";		
		$error_data = true;
	}
	
	// csak akkor ellenőrizzük az avatart, ha fel van töltve, illetve
	// az űrlap többi mezője nem tartalmaz hibát
	if($_FILES["avatar"]["name"]!="" && $error_data==false) {
		$avatar_pathinfo = pathinfo($_FILES["avatar"]["name"]);
		$avatar_extension = $avatar_pathinfo["extension"];
		$avatar_filesize = $_FILES["avatar"]["size"];
		$avatar_tmp_name = $_FILES["avatar"]["tmp_name"];
		$avatar_dimensions = getimagesize($avatar_tmp_name);
		$avatar_mime_type = $avatar_dimensions["mime"];
		$allowed_extensions = array("image/jpeg" => "jpg", "image/gif" => "gif", "image/png" => "png");
		if(is_uploaded_file($avatar_tmp_name)) {
			if($avatar_filesize>20000) {
				echo "<div class='message error'>A fájlméret nem lehet több, mint 20kbyte.</div>";
				$error_avatar = true;
			} elseif(!in_array($avatar_extension,$allowed_extensions) || !isset($allowed_extensions[$avatar_mime_type])){
				echo "<div class='message error'>Nem engedélyezett formátum.</div>";
				$error_avatar = true;
			} elseif($avatar_dimensions[0]!=100 && $avatar_dimensions[1]!=100) {
				echo "<div class='message error'>A kép mérete kötelezően 100x100 képpont kell, hogy legyen!</div>";
				$error_avatar = true;
			} else {
				// átnevezi a tmp fájlt egy véletlenszerűen generált fájlnévre
				$avatar_local_tmp_name = $username.".".$allowed_extensions[$avatar_mime_type];
				// az átnevezett tmp fájlt áthelyezi a saját tmp könyvtárunkba
				move_uploaded_file($avatar_tmp_name,"tmp/".$avatar_local_tmp_name);
				// saját tmp könyvtárból átmásolja az upload könyvtárba
				copy("tmp/".$avatar_local_tmp_name,"upload/".$avatar_local_tmp_name);
				// törli a saját tmp fájlt
				unlink("tmp/".$avatar_local_tmp_name);
				echo "<div class='message notice'>Sikeres képfeltöltés!</div>";
			}
		}
	}
	if($error_data==false && $error_avatar==false) {
		echo "<div class='message notice'>Sikeres regisztráció!</div>";
		$sql = @ new mysqli("localhost","root","root","user");
		if($sql->connect_errno) {
			echo "<div class='message error'>Adatbázis hiba: ", $sql->connect_errno." ".$sql->connect_error;
			exit();
		}
		$query = "INSERT INTO `user` (`user_username`,`user_email`,`user_password`) VALUES ('".$username."', '".$email1."', '".sha1($password1)."')";
		$sql->query($query) or die("Hiba!");
	}
}
if(!isset($_POST["form_submit"]) || $error_data || $error_avatar) {

HTML forráskód


<div id="regform">

	<form method="POST" enctype="multipart/form-data">

		<h1>Regisztráció</h1>
		<p>Kérjük töltse ki az alábbi űrlapot!</p>
		
		<label for="username">
			felhasználónév:
			<small>legalább 3 karakter</small>
		</label>
		<input id="username" type="text" name="username" value="<?php echo isset($_POST["username"])?$_POST["username"]:""; ?>"/>
		
		<label for="password1">
			jelszó:
			<small>legalább 4 karakter</small>
		</label>
		<input id="password1" type="password" name="password1"/>

		<label for="password2">jelszó ismétlés:</label>
		<input id="password2" type="password" name="password2"/>
		
		<label for="email1">e-mail cím:</label>
		<input id="email1" type="text" name="email1" value="<?php echo isset($_POST["email1"])?$_POST["email1"]:""; ?>"/>
		
		<label for="email2">e-mail cím ismétlés:</label>
		<input id="email2" type="text" name="email2" value="<?php echo isset($_POST["email2"])?$_POST["email2"]:""; ?>"/>

		<label for="avatar">
			avatar (100x100):
			<small>JPG,GIF,PNG, max. 20kbyte</small>
		</label>
		<input id="avatar" type="file" name="avatar"/>
		
		<input type="submit" name="form_submit" value="elküldés"/>

		<div class="clear"></div>
	</form>

</div>

Mérei Tamás Webdesigner

Szerző

Mérei Tamás vagyok, webdesigner. Reszponzív weboldalak készítésével foglalkozom, grafikai tervezéstől a HTML + CSS kódolásig.

Ismerj meg! Nézd meg eddigi munkáimat! Lépj velem kapcsolatba!

162 hozzászólás

  1. Papó
    2016. március 25. péntek - 14:10

    Sziasztok!
    Az hogyan oldható meg, hogy a hibaüzenet ne fent jelenjen meg, hanem az űrlapelem mellett? Vagy a problémás elemet piros szegéllyel vegye körbe? Köszi a válaszokat!

  2. Robi
    2014. július 16. szerda - 11:28

    Mr.cyrex/mindenki, azt hogyan lehet megoldani, hogy emailt küldjön, ugye egy aktiváló kóddal és csak a rányomásával lehessen aktiválni a regisztrációt. Válaszodat/válaszaitokat előre is köszönöm. 🙂 B)

    • Adam
      2014. október 16. csütörtök - 18:56

      Ez már komolyabb php és db ismereteket igényel kell hozzá boolean mező a dbms-ben ill a php csomó függvénye.

  3. András
    2014. július 16. szerda - 10:21

    Üdv. Először is köszönet a videókért, nagyon hasznosak 🙂
    A segítségedet kérném. Szeretném kiíratni egy tábla cellájának értékét, de valamiért nem sikerül. Hibát nem ír, de az értéket sem írja ki

    $sql = @ new mysqli($sql_host,$sql_user,$sql_pass,$sql_db2);
    if($sql->connect_errno){
    $hiba= “Adatbázis Hiba!”. ”;
    $error_data = true;
    exit();

    }

    $query = “SELECT `regist_acc` FROM `e107_user` WHERE `user_id` = ‘”.$unique_id.”‘”;
    $regist_acc = $sql->query($query) or die(“Hiba!”);
    while ($row=mysql_fetch_array($regist_acc))
    {
    $acc_num = $row[‘regist_acc’];
    echo $acc_num;

    if ($acc_num>5){
    $hiba.= “Elérted a limitet!” .$acc_num. ”;

    $error_data = true;
    }
    }

    • damisty
      2014. szeptember 21. vasárnap - 09:28

      Első ránézésre van egy-két felesleges idézőjel, ami megzavarhatja a php feldolgozást.
      (Pl.: $hiba.= “Elérted a limitet!” .$acc_num. “;
      helyesen: $hiba.= “Elérted a limitet!” .$acc_num;)

      ha ezeket javítod, akkor szerintem működnie kell.

      connect_errno){
      $hiba= “Adatbázis Hiba!”;
      $error_data = true;
      exit();

      }

      $query = “SELECT `regist_acc` FROM `e107_user` WHERE `user_id` = ‘”.$unique_id.”‘”;
      $regist_acc = $sql->query($query) or die(“Hiba!”);
      while ($row=mysql_fetch_array($regist_acc))
      {
      $acc_num = $row[‘regist_acc’];
      echo $acc_num;

      if ($acc_num>5){
      $hiba.= “Elérted a limitet!” .$acc_num;

      $error_data = true;
      }
      }

      ?>

  4. Kentaur:D
    2014. június 26. csütörtök - 17:02

    Szia! Azt hogyan lehetne elerni hogy a keresosavban ne mutassa hogy index.html vagy error.php ertitek. Hanem pl. http://www.valami.com/nemtudom

    • cyrex
      2014. július 5. szombat - 23:09

      Keresőbarát URL-re keress gugliban.

  5. Adam
    2013. december 18. szerda - 20:29

    A phphez annyit tennék hozzá hogy ott nem jó a regex ugyanis tuttommal nem engedi a mail szolgáltatók közül senki ezt A-z.

  6. Adam
    2013. december 16. hétfő - 14:53

    Egy egyszerű köbreemelés kezdő PHP-soknak.

    $kobre=$_POST[‘kobre’];
    $vegeredmeny=$kobre*$kobre*$kobre
    (Ne felejtsd le a <?php<? tagokat)

  7. Adam
    2013. december 12. csütörtök - 20:30

    PHP-ról részletesebben bárkinek a http://php.net/ írnak

  8. Adam
    2013. december 11. szerda - 16:18

    Vagy egy rekordba eltárolod az adatbázisba webes felületen vagy php-n keresztül ezzel a kóddal
    És utána lekérdezed a loginnél.

  9. Adam
    2013. június 25. kedd - 15:25

    Egy kis gond van a phpval mikor értelmezi a szerver hibaüzenetet kapok hogy nem létezik tmp mappa plusz hogy még nem tud másolni sem és a forrás a következő:

    <?php
    $logo=$_POST['logo1'];
    $engedett='jpeg,jpg,tiff,TIF,gif,png,tga,dib';
    
    if(!$logo) echo"Nem választott fájlt";
    echo"";
    if($logo!=$engedett) "Nem engedett formátum csak JPEG,JPG,GIF,TIFF,TIF GIF,PNG,TGA ÉS DIB tölthető fel";
    if (is_uploaded_file($;
     else move_uploaded_file($logo,"tmp/".$logo);
    copy("tmp/".$logo_local_tmp_name,"logo/".$logo);
    unlink("tmp/".$logo);
    echo"Sikeres kép feltöltés"; 
    ?>
    

    A segítséget köszönöm 🙂

    • SWDsoft
      2013. augusztus 11. vasárnap - 09:57

      Akkor csinálj egy tmp mappát, és állítsd be a 0755-es attribútumot.
      chmod(“mappa”, 0755) -> Oktális típus (Ez a jobb)
      chmod(“mappa”, 755) -> Decimális típus

  10. Gábor
    2013. április 17. szerda - 21:40

    Szia
    Azt szerettem volna megkérdezni,hogy nem gondolkoztál-e egy javascript vagy esetleg egy PHP videóra kezdőknek???
    Például olyat mint a HTML-CSS volt,szinte én abból tanultam meg a weblapkészités alapjait és rejtelmeit,ma már lassan el tudnék késziteni egy weblapot,ezért hálás is vagyok…
    Szóval nem gondolkoztál még a javascript vagy PHP kezdőknek videókon?

    • cyrex
      2013. április 17. szerda - 21:59

      Nem értek a PHP-hez, a JS-hez meg csak minimálisan.

  11. Simonkovics Ádám
    2013. április 13. szombat - 16:32

    Cyrex! Kicsit elrontottad a web design-t én javaslom a kék-fehér,vagy a fakó sárga fekete színkombinációt. Kérlek orvosold a módosítást, mert lehet, hogy én el tudom olvasni de egy idősebb korosztály már nem

    • cyrex
      2013. április 13. szombat - 18:33

      Mit rontottam el rajta?

    • Drommlen
      2013. április 24. szerda - 22:13

      Semmit, nekem nagyon tetszik!!:D

  12. feco132
    2013. április 8. hétfő - 20:22

    Sziasztok!
    Láttam, hogy sokan kértétek tegyék be az sql importálást! Úgy gondoltam megcsinálom nektek! Fogyasszátok egészséggel!

    
    CREATE TABLE IF NOT EXISTS `user` (
      `user_id` int(10) NOT NULL AUTO_INCREMENT,
      `user_username` varchar(10) COLLATE utf8_hungarian_ci NOT NULL,
      `user_email` varchar(255) COLLATE utf8_hungarian_ci NOT NULL,
      `user_password` varchar(255) COLLATE utf8_hungarian_ci NOT NULL,
      PRIMARY KEY (`user_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci AUTO_INCREMENT=1 ;
    
    
  13. Simonkovics Ádám
    2013. március 28. csütörtök - 15:14

    Amikor megjelenik a hiba odáig eljutottam, hogy kiírja de nem formázza a css-be Mi lehet a gond?
    Kérlek segíts

    • SWDsoft
      2013. március 29. péntek - 09:25

      Rossz a kód. Látatlanba senki sem tudja megoldani.

  14. K.Péter
    2013. március 15. péntek - 09:32

    Szia! Nem igazán idevág a kérdésem, de azt szeretném megkérdezni hogy php-val csak egyszeres űrlapot lehet készíteni, vagy folyamatos űrlapot is? Ha lehet akkor hogyan? MS Access-be ez “gyerekjáték” lenne, de php-val még nem találkoztam ilyennel. Tudnál ebben segíteni? Köszönöm előre is!

  15. SWDsoft
    2013. február 17. vasárnap - 13:45

    Szia Cyrex!

    Olvastam hogy sokan kértek bejelentkező scriptet, ennek megpróbáltam eleget tenni, és megírtam ezt a kis egyszerű PHP scriptet, amit az általad létrehozott adatbázist használja, elvileg semmit sem kell benne átírni, max az adatábizshoz való kapcsolódást, a kódot teszteltem.

    PHP:

    $con = mysql_connect("localhost","root","");
    mysql_select_db("test",$con);
    if (!$con) {
    	die('Could not connect: ' . mysql_error());
    }
    else {
    	if(isset($_POST["login"])) {
    		$username = $_POST["username"];
    		$password = sha1($_POST["password"]);
    		$query = mysql_query("SELECT * FROM user_login
    				WHERE user_username = '".mysql_real_escape_string($username)."'
    				AND user_password = '".mysql_real_escape_string($password)."'");
    		$counter = mysql_num_rows($query);
    		if($counter == 1) { echo "Sikeres Login!"; }
    		else { echo "Sikertelen login!"; }
    	}
    }
    

    HTML:

    Username:
    Password:
    • Adam
      2013. november 4. hétfő - 16:04

      Szerintem elfeljted megnézetni hogy regisztrálva van már a felhasználó vagy sem.

    • SWDsoft
      2014. március 25. kedd - 09:54

      Akkor egy kicsit nézegesd még a kódot.

  16. Anita
    2013. február 6. szerda - 09:13

    Nem lehetne a bemutató adatbázisát is feltölteni, mert nálam is a másoknál is előforduló hiba jelentezik (Adatbázis hiba: 1045 Access denied for user ‘root’@’localhost′ (using password: YES).

  17. StellDJ
    2013. január 26. szombat - 18:29

    Hello!

    Azt szeretném megkérdezni, hogy milyen sql táblák vannak, és hogy vannak beállítva mert konkrétan a példán én ezeket láttam, de mindig feltöltésnél hiba2- jelenik meg az üzeneteknél mi lehet a gond? Szerintem sql-el lehet valami.

    user_id auto increment (max hossz 10)
    user táblanévben van egy user_username (varchar 10)
    user_email (varchar 255)
    user_password (varchar 255)

    • Anita
      2013. február 4. hétfő - 15:42

      Nekem is ugyanez a problémám.

    • cyrex
      2013. február 9. szombat - 21:59

      Fogalmam sincs, több, mint két éve csináltam ezt a videót.

    • SWDsoft
      2013. március 1. péntek - 19:24

      Amúgy meg a programozást másképpen nem lehet megtanulni, mint hogy mindig utánamész a problémának, valószínűleg ilyen kérdésekre sehol sem fogtok választ kapni.

  18. Ninna
    2013. január 25. péntek - 10:04

    Szió!
    Nagyon sokat segít az oldal. Köszönöm szépen.
    Egy webmester szakra járok és ott elég nehéz figyelni a többiektől meg igazából nem is magyarázzák el teljesen. Itt nagyon jól összefoglalod a dolgokat és szerencsére meg is értem.

    Az lenne a kérdésem, hogy PHP-vel sokat szoktál foglalkozni, ill. a weboldalakat amiket készítettél azt WordPress-sel és a másik programmal készítetted, vagy van benne PHP kód is? Mert ha nem, akkor megnyugszom és nem szenvedek a php megértésével, mert 2 év alatt sem sikerült elsajátítanom ://

    Előre is köszi a választ!
    Üdv ~ Ninna

    • cyrex
      2013. január 25. péntek - 10:28

      Webdesigner vagyok, egyáltalán nem foglalkozom programozással. Amit ebben a videóban látsz az csak egy alapszint, amit mindenkinek illene tudni aki bármilyen téren is weboldal tervezéssel foglalkozik.

  19. simonkovics Ádám
    2013. január 11. péntek - 19:59

    A php mail legegyszerűbb működése az automail

  20. Selene
    2012. november 7. szerda - 20:50

    Valaki tudna segíteni nekem ha igen írjatok erre az e-mail címre:lovaim@citromail.hu

  21. Bence
    2012. október 31. szerda - 00:18

    Nekem az a baj, hogyha megnyitom akkor mindig kiírja hogy a “Nincs megadva felhasználónév!”

    • Adam
      2013. november 18. hétfő - 17:05

      Valószínű nem adtad meg a [code][/code] atribútumnál a nevét a mezőnek.

  22. Selene
    2012. október 30. kedd - 18:46

    Sziasztok!
    Nekem lenne egy kis problémám a kódnál:
    kitöltöm helyesen és ezt írja ki:
    Adatbázis hiba: 1045 Access denied for user ‘root’@’88.151.96.4’ (using password: YES)
    Na most ezzel még lenne valami hogy ha beírok simán egy felhasználó nevet is ezt írja ki!
    Az oldal mysql címét a kódban nem találtam meg, hogy hol lehet meg csinálni!

  23. Lexar
    2012. július 27. péntek - 19:52

    Egy javaslat azoknak akik ezt esetleg csak lemásolják:
    A pw és mail ellenőrzésnél elseif ágakat használsz, én megmondom őszintén inkább egy külön if-et használnék, mivel nagyon szokott idegesíteni, amikor az egyik errort kijavítom és dobja a másikat.
    (akinek nem lenne tiszta: ha 3 karakternél kevesebb a jelszó és a tetejébe nem egyezik, akkor csak az egyik jelenik meg, ha jól nézem)
    Különben köszi a videókat, csak most szakítottam rá időt, hogy végignézzem.

  24. Bence
    2012. július 3. kedd - 21:20

    Sziasztok!
    Valaki esetleg meg tudná mondani hogy, ez hogyan működik??
    Vagyis:
    Pl van 1 regisztráció.
    (Az én elképzelésem)
    Beregizek,és elmenti egy mappába. És ha be szeretnék lépni akkor,lekérdezi a mappát hogy van e- ilyen páros??

    • cyrex
      2012. július 3. kedd - 21:31

      Hát ez nagyon távol áll a valóságtól.

    • SWDsoft
      2013. február 17. vasárnap - 13:42

      Maximum egy txt fájlba tudod regisztrálni a regisztrációkat, ez sokkal macerásabb mint a mysql-es megoldás.

  25. Tichi Márton
    2012. június 27. szerda - 18:48

    Mit csinálok rosszul ennél a résznél?:

    var_dump($_FILES);
    if($_FILES["avatar"]["name"]!="") {
    echo "feltöltött kép";
    }
    

    Azt írja ki, hogy

    array(0) { }
    Notice: Undefined index: avatar in C:\xampp\htdocs\reg\index.php on line 59

    Egyébként ez milyen wordpress téma?

    • SWDsoft
      2012. június 28. csütörtök - 14:40

      Egy üres tömböt ad vissza. Valószínűleg valamit nem kap meg a files tömb. Nézd meg hogy helyesen írtad be az attribútumokat. Például hogy az inputod name attr.-e az avatar-e.A másik hiba a következő lehet. Ugye alapból a files tömb üres, és lehet hogy te a form elküldése előtt íratod ki. Mivel ez egy asszociatív tömb, és te az avatar kulcsot kérdezed le, ezért nincs hozzárendelve érték. ezért írja hogy Undefined index. De ebből valószínűleg senki semmit sem fog tudni segíteni, ugyanis nincs elég info ahhoz hogy segíteni lehessen.

    • Márk
      2012. július 2. hétfő - 13:16

      az 59. sorban van a hiba.

  26. Márk
    2012. június 19. kedd - 11:06

    KEDVES CYREX!!!
    csinálsz olyat ,hogy A FELHASZNÁLÓ BE IS TUD LÉPNI.
    ELŐRE IS KÖSZÖNÖM 🙂 !

    • SWDsoft
      2012. június 19. kedd - 21:44

      Szia! Rengeteg előre megírt script áll a rendelkezésedre. De ha nagyon szeretnéd elmagyarázom hogy működik egy ilyen. Felveszed a username-t, és a password-ot egy-egy változóba. Írsz egy kérést, amivel lekéred hogy létezik-e a felhasználónév, az SQL kérést felküldöd, és ráeresztesz egy mysql_num_rows(); függvényt. Ezzel megkapod hogy léteznek-e. Halétezik akkor regisztrálsz egy $_SESSION változót, ezzel jelezve hogy be van jelentkezve, ha nem létezik akkor csak hibaüzenet. Írtam neked egy rövid scriptet!

      $password = $_POST["password"];
      $login_check = "SELECT * FROM tábla_aholtárolod_a_usereket WHERE user_felhasználóneve = '".$username."' AND user_jelszava = '".$password."'";
      $login_query = mysql_query($login_check);
      $login_valid = mysql_num_rows($login_query);
      
      if($login_valid === 1) {
      	//Ha 1 a visszatérési érték, akkor léteznek a megadott paraméterek
      	echo "Sikeresen bejelentkeztél!";
      	$_SESSION["login_session"] = 1;	
      }
      else {
      	echo "Hibás felhasználónév / jelszó!";
      }
      

      Nagyjából ennyi lenne!

    • SWDsoft
      2012. június 19. kedd - 21:46

      Valamiért levágta az üzenőfal a kód egy részletét, de feltöltöttem neked ide: http://ventosite.info/js/loginphp.txt

    • Márk
      2012. július 2. hétfő - 13:12

      köszi.

  27. maximuse
    2012. május 22. kedd - 21:44

    Üdv Cyrex!
    Van egy üzenetküldő formom, ami emailre küldi az üzenetet. A karakterekhez ez van megadva:[a-zöüóőúéáűíA-ZÖÜÓŐÚÉÁŰÍ], mégis kiírja a hibaüzenetet, hogy érvénytelen karaktart tartalmaz, ha ékezetes betűt írok be. Miért van ez, és hogy lehet orvosolni a problémát??? Mit rontottam el???
    Amúgy nagyon jók a videóid, és sokat segítettek. Válaszodat várom és köszönöm!
    Tisztelettel: Maximuse

    • cyrex
      2012. május 27. vasárnap - 22:10

      Ebben nem tudok segíteni, fogalmam sincs a PHP-ról, ezt a videót több, mint 1 éve készítettem 🙂

    • SWDsoft
      2012. június 2. szombat - 16:27

      Forráskód nélkül semmit sem lehet ezzel kezdeni. Küldd el nekem a forráskódot, és talán megpróbálok segíteni.

  28. bammer
    2012. május 17. csütörtök - 16:46

    Hali! Köszi szépen a videót, nagyon sokat segített! Nem akarok telhetetlen lenni, de a hibaüzenetekről szóló css részt nem tudnád leírni?

    • cyrex
      2012. május 27. vasárnap - 22:12

      Kiraktam valami CSS-t, remélem ehhez a videóhoz tartozik 🙂

  29. Haematoma
    2012. április 5. csütörtök - 16:28

    Én abba a hibába estem a képfeltöltés készítésekor, hogy le szerettem volna kezeli a többféle” jpeg” formátumokat. Be is helyeztem a tömbbe $allowed_extensions = array(“image/jpeg” => “jpg”, “image/jpeg” => “jpeg”, “image/jpeg” => “JPG” );
    Így azonban a formátum vizsgáló feltétel első fele nem fogja engedélyezni a feltöltést, csak a tömbben szerplő utolsó kiterjesztésűeknek, mivel mindnek a mime-je “image/jpeg”
    Ezért két tömbbe kell kezelnem, egyikben mime type, a másikban a kiterjesztések. Van valami okosabb megoldás erre?

  30. Szilárd
    2012. március 7. szerda - 14:55

    Komolyan nincs olyan nagy hiba benne 🙂 türhető,ön a php-t miből tanulta vagy tanulja?
    Én a pte ttk végeztem mint programtervező informatikus 🙂 ha,esetleg kéne valami újjabb videóhoz segítség nyugodtan írj:)

    • cyrex
      2012. március 7. szerda - 15:11

      Anno a főiskolán nyomtak némi OOP-t, de abszolút nem vágtam a dolgokat.
      Programozó kollégáimtól szoktam kérdezni, ha valamit nem tudok megcsinálni, illetve egy-két oktatóvideót is megnéztem.

  31. Szilárd
    2012. március 6. kedd - 17:55

    Üdv,Cyrex
    Látom elég ügyes vagy 🙂 gratulálok a videóhoz látok benne egy két kisebb nagyobb hibát,de így sima felhasználásra bőven jó! Üdv 🙂 Szilárd

    • cyrex
      2012. március 6. kedd - 19:56

      Lehet több is van benne, nincs sok közöm a programozáshoz 🙂

  32. Iszin
    2012. február 10. péntek - 01:20

    Kedves Cyrex!
    Hálás vagyok a videóidért! Folyamatosan tanulok belőlük.
    Üdv: Iszin

    • cyrex
      2012. február 11. szombat - 23:02

      Örülök. Azért készítem 🙂

  33. Haematoma
    2012. január 27. péntek - 17:01

    Szerintem a Te vagy a legjobb oktató, akinek nyílt tutorial-jai vannak! Köszönöm

  34. danix99
    2012. január 23. hétfő - 17:08

    Fúhh, köszi! Sose értettem volna meg ezeket az űrlapokat 😀 Mikorra tervezel videót? A wordpressbe hogy lehet oldalt csinálni?(regisztrálni vagy valami :D)

  35. Nazinorbi
    2012. január 6. péntek - 14:20

    Gratulálok jó ki turotiál, sokat tanultam belőle. A kérdésem az lenne hogy fogsz e csinálni egy SQL session alapú bejelentkező segédletet a közeljövőben? 🙂

  36. szabi95
    2011. december 26. hétfő - 23:51

    Szia cyrex! 🙂 nem tudnád fel rakni a CSS-t ide? Mert már nem lehet letölteni az oldalról, hogy most nézem… 😀 igen nagyon fontos lenne 🙂 köszi előre is

    • cyrex
      2012. május 27. vasárnap - 22:13

      Feltöltöttem.

  37. imre
    2011. október 30. vasárnap - 08:12

    nagyon jók a videók bár szerintem be kéne még rakni egy captcha ellenőrzőt

  38. Mészáros Krisztián
    2011. október 13. csütörtök - 18:01

    Szia!

    Nagyon szépen köszönöm a tutorialt! Rengeteget tanultam belőle!

  39. Balázs
    2011. augusztus 5. péntek - 12:47

    Sziasztok!
    Nagyon jó ez a tutorial is! Sajnos elakadtam. Csináltam egy honlapot, az őszi honlap mintájára, és ?op=reg módszerrel próbálom benne elhelyezni a regisztrációt. A képfeltöltésnél nekem nem látja a méretet, stb, hanem 0-kat ír értéknek. Úgyhogy anélkül próbáltam. Elkészült, már csak a mysql-re feltöltés kellene, de sehogy sem sikerül. Nekem kidobja azt a hiba üzenetet, ami az or die ágon van….
    a honlap http://www.ftpchatbalazs.atw.hu ha szükséges, elküldöm a forráskódot is.

    Azt írja, amikor a phpmyadmin-ban rámennék a tartalom fülre, hogy üresnek tűnik a tábla.
    Remélem tud valaki segíteni, hogy mit ronthattam el.
    Előre is kösz: Balázs

    • Balázs
      2011. augusztus 5. péntek - 18:17

      Megoldottam 🙂

Hozzászólás

Legújabb hozzászólások