-
14.09.2012, 20:51 #1
Reg-Formular + Bootstrap Design
Nabend, ich wollte mich mal einem Bootstrap-Design versuchen und habe dafür ein Reg-Formular geschrieben, eventuell kann jemand etwas damit anfangen oder hat Verbesserungsvorschläge
users.sql:
Code:CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` varchar(50) NOT NULL, `email` varchar(100) NOT NULL, `birthday` varchar(10) NOT NULL, `first_name` varchar(50) NOT NULL, `last_name` varchar(50) NOT NULL, `ip` varchar(20) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`,`email`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
PHP-Code:<?php
/* MySQLi
$db = @new mysqli( 'localhost', 'root', '', 'beispiel');
if (mysqli_connect_errno() == 0){}else{
echo 'Die Datenbank konnte nicht erreicht werden. Folgender Fehler trat auf:' .mysqli_connect_errno(). ' : ' .mysqli_connect_error(). '</span>';}
*/
error_reporting(0);
$con = mysql_connect('localhost','root','') or die('Verbindung konnte nicht hergestellt werden.');
mysql_select_db('beispiel') or die('Datenbank existiert nicht.');
?>
<!DOCTYPE html>
<html>
<head>
<title>myProject - Registrieren </title>
<meta charset="utf-8">
<link rel="stylesheet" href="bootstrap.min.css">
<style>
body { padding-top:60px; }
</style>
</head>
<body>
<div class="navbar navbar-fixed-top navbar-inverse">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="#">myProject</a>
<ul class="nav">
<li><a href="#">Startseite</a></li>
<li><a href="#">Login</a></li>
<li><a href="#">Hilfe</a></li>
</ul>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="span12">
<ul class="breadcrumb">
<li><a href="#">Startseite</a><span class="divider">/</span></li>
<li class="active">Registrieren</li>
</ul>
</div>
</div>
<div class="row">
<div class="span5">
<h3> myProject - Registrieren </h3>
<div class="well">
<p>Hier können Sie sich für myProject registrieren.</p>
<form action="#" method="post">
<table border=0>
<tr>
<td>Benutzername:</td>
<td><img src="img/user.png" /> <input type="text" name="username" placeholder="Benutzername" /></td>
</tr>
<tr>
<td>Passwort:</td>
<td><img src="img/pass.png" /> <input type="password" name="password" placeholder="Passwort" /></td>
</tr>
<tr>
<td>Wiederholen:</td>
<td><img src="img/pass.png" /> <input type="password" name="password_re" placeholder="Passwort" /></td>
</tr>
<tr>
<td>EMail-Adresse:</td>
<td><img src="img/mail.png" /> <input type="text" name="email" placeholder="EMail-Adresse" /></td>
</tr>
<tr>
<td>Geburtsdatum:</td>
<td><img src="img/date.png" /> <input type="text" name="birthday" placeholder="DD.MM.YYYY" /></td>
</tr>
<tr>
<td>Vorname:</td>
<td><img src="img/pen.png" /> <input type="text" name="first_name" placeholder="Vorname" /></td>
</tr>
<tr>
<td>Nachname:</td>
<td><img src="img/pen.png" /> <input type="text" name="last_name" placeholder="Nachname" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="submit" value="Registrieren." class="btn btn-primary" style="width:100%;" /></td>
</tr>
</table>
</form>
</div>
</div>
</div>
</div>
</body>
</html>
<?php
if($_POST["submit"])
{
foreach($_POST as $key => $val){$info[$key] = array($key,htmlspecialchars(htmlentities(trim(mysql_real_escape_string($val)))));}
$username = $info['username'][1];
$password = $info['password'][1];
$password_re = $info['password_re'][1];
$email = $info['email'][1];
$birthday = $info['birthday'][1];
$first_name = $info['first_name'][1];
$last_name = $info['last_name'][1];
$ip = $_SERVER["REMOTE_ADDR"];
$errors = array();
if(!preg_match('/^[a-zA-Z0-9_]{4,20}/', $username))
{
$errors[] = 'Benutzername ist falsch.';
}
if($password!=$password_re)
{
$errors[] = 'Passwörter stimmen nicht überein.';
}
if(strlen($password<8) &&strlen($password_re<8))
{
$errors[] = 'Das Passwort muss aus mind. 8 Zeichen bestehen.';
}
if(!preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/', $email))
{
$errors[] = 'Keine gültige EMail-Adresse.';
}
if(preg_match('/([0-9]{2}).([0-9]{2}).([0-9]{4})/', $birthday, $matches))
{
if(checkdate($matches[2], $matches[1], $matches[3]))
{
}
else
{
$errors = 'Kein gültiges Geburtsdatum.';
}
}
else
{
$errors[] = 'Kein gültiges Geburtsdatum.';
}
if(!preg_match('/^[a-zA-Z]{1,50}/',$first_name))
{
$errors[] = 'Kein gültiger Vorname.';
}
if(!preg_match('/^[a-zA-Z]{1,50}/',$first_name))
{
$errors[] = 'Kein gültiger Nachname.';
}
if(empty($errors[0]))
{
$pass = md5($password);
$query = mysql_query("INSERT INTO users (username, password, email, birthday, first_name, last_name, ip) VALUES ('$username','$pass','$email','$birthday','$first_name','$last_name','1.3.3.7');");
if($query)
{
echo 'Der neue Eintrage wurde hinzugefügt.';
}
else
{
echo 'Der Eintrag konnte nicht hinzugefügt werden.<br>' . mysql_error();
}
/* MySQLi
$sql = 'INSERT INTO `users` (`username`, `password`, `email`, `birthday`, `first_name`, `last_name`, `ip`) VALUES (?, ?, ?, ?, ?, ?, ?)';
$eintrag = $db->prepare($sql);
$eintrag->bind_param('sssssss', $username, $pass, $email, $birthday, $first_name, $last_name, $ip);
$eintrag->execute();
if ($eintrag->affected_rows==1)
{
echo 'Der neue Eintrage wurde hinzugefügt.';
}
else
{
echo 'Der Eintrag konnte nicht hinzugefügt werden.';
}
$db->close();
*/
}
else
{
foreach($errors as $error)
{
echo 'Fehler: ' . $error . '<br />';
}
}
}
?>
-
14.09.2012, 20:58 #2
- Registriert seit
- 18.11.2011
- Beiträge
- 226
Thanked 165 Times in 82 PostsAW: Reg-Formular + Bootstrap Design
Unsauberer hättest du es nicht hin bekommen, wie kann man solch einen Code nur freiwillig sharen?
-
14.09.2012, 21:09 #3
-
14.09.2012, 21:14 #4
AW: Reg-Formular + Bootstrap Design
Die ganzen Images hättest du noch weiter nach rechts einrücken können. Sieht so ehrlich gesagt scheiße aus. Ansonsten erfüllt es ja seinen Zweck, über den unsauberen Code lässt sich streiten.
-
14.09.2012, 23:18 #5
- Registriert seit
- 15.01.2012
- Beiträge
- 7
Thanked 3 Times in 2 PostsAW: Reg-Formular + Bootstrap Design
PHP-Code:array($key,htmlspecialchars(htmlentities(trim(mysql_real_escape_string
Und komisch das es den Code bereits so wie oben einmal im Netz gibt und oh Wunder! bei U-Hacks!!!!!!!!
http://u-hacks.net/php-98/php-quizscript-12751/
Auch noch ohne Credits
Copy & Paste King is back
Nice Work Nico
-
The Following 2 Users Say Thank You to Straßenapotheker For This Useful Post:
-
15.09.2012, 08:35 #6
AW: Reg-Formular + Bootstrap Design
Oh ja, C&P, ein MySQL-Insert ist ja nicht immer gleich und vor allem kopiere ich diesen Code mit Sicherheit nicht von Moritz
-
15.09.2012, 09:04 #7
AW: Reg-Formular + Bootstrap Design
Da spricht aber der Profi. Anscheinend hat dort ja einer viel Ahnung, denn es kommt ja auch so selten vor das Funktionen zum Escapen in Verbindung mit einem SQL Insert genutzt werden, nicht?
Ich mein, er ist eventuell selbst nicht der beste, ich glaube keiner von uns kann hier behaupten das er der PHP Programmierer schlecht hin ist - besonders weil keiner hier eine dementsprechende Ausbildung hat (ausgenommen von Sky).
Von daher haltet euch doch einfach mal zurück. Wenns unsauber ist, dann korrigier ihn doch lieber. Auf Fehler hinweisen schön und gut, wenn er aber ein Script für alle zur Verfügung steht - was jedoch sicher ist, auch wenns unsauber gemacht ist - dann Verbessere es doch lieber anstatt dich darüber aufzuregen.
Wo du nun dein C&P her nimmst ist mir ein Rätsel, aber gut, werde ich in Zukunft auch bei sämtlichen Leuten anmerken die "private" vor ihre Klassen schreiben. Könnte ja irgendwo anders kopiert sein.
Bevor du nun mit deinen Verschwörungstheorien ankommst: Ich habe beiden geraten Ihre strings zu escapen - klar das man da bei Scripten welche man Public stellt alle verfügbaren Mittel nutzt um das sicher zu machen und sich durchaus mal etwas überschneiden kann. Schön das sich User die von den Hintergründen 0 Ahnung haben hier zu Wort melden.Geändert von Comu (15.09.2012 um 09:06 Uhr)
-
The Following 3 Users Say Thank You to Comu For This Useful Post:
Gangstersheep (15.09.2012), iToxic (15.09.2012), Snees (15.09.2012)
-
15.09.2012, 15:17 #8
- Registriert seit
- 27.10.2011
- Beiträge
- 402
Thanked 288 Times in 165 PostsAW: Reg-Formular + Bootstrap Design
Ab jetzt bitte nur noch etwas konstruktives Posten - danke. Er verwendet diesen Codeteil schon öfter und nur weil er zufälligerweise das selbe hat wie rvs14 (ich weiß da nun nicht ob Nico ihm diesen Teil auch gegeben hat) heisst es nicht er betreibt C&P - vorallem da so etwas (meistens auch in anderen Weisen) gängig ist zum Schutz vor SQL-injections.
-
The Following User Says Thank You to Nachto For This Useful Post:
Snees (15.09.2012)
Ähnliche Themen
-
Mitgliedsantrag Formular !
Von BVB im Forum RealLifeAntworten: 1Letzter Beitrag: 25.11.2013, 21:40 -
Bootstrap 3 RC1 ist da!
Von Devon im Forum WebentwicklungAntworten: 5Letzter Beitrag: 03.08.2013, 17:48 -
Twitter Bootstrap - Schwarzer Balken an der Navigation
Von BL4cK im Forum HTMLAntworten: 6Letzter Beitrag: 14.01.2013, 19:12 -
[CSS] Eigenes Design mit Bootstrap
Von Comu im Forum TutorialsAntworten: 3Letzter Beitrag: 14.09.2012, 19:45
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.