Registration hilfe

Viper2009

Erfahrenes Mitglied
hallo ich bin da bei eine Registration zu schreiben, blos ich habe probleme und hoffe ihr könnt mir helfen.

Der code ist so weit ok aber es müssen stops oder so eingebunden werden
und zwar muss man ihn da sagen das er das nicht zum server senden soll wenn eine der beiden keine angaben hat.

if ($a_username=='')
{
exit(); oder so
echo "Username is missing!<br>";
}
if ($a_password=='')
{
exit(); oder so
echo "Password is missing!<br>";
}

Und was net wäre wenn ihr mir sagen könntet wie ich ihn sage das in der db nur einam der name sein darf bsp. Viper Viper das er dan sagt benutzer name wird bereits benutzt








<?php

$dbhost = '127.0.0.1';
$dbuser = 'root';
$dbpass = 'root';
$dbname = 'test';
$table = "account";

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
mysql_select_db($dbname);


?>
<body>
<?
if(isset($_POST['add']))
{
$a_username = $_POST['a_username'];
$a_password = $_POST['a_password'];

$query = "INSERT INTO $table (a_username, a_password) VALUES ('".$_POST['a_username']."', '".$_POST['a_password']."')";
mysql_query($query) or die('Error, insert query failed');
$query = "FLUSH PRIVILEGES";
mysql_query($query) or die('Error, insert query failed');



if ($a_username=='')
{
echo "Username is missing!<br>";
}
if ($a_password=='')
{
echo "Password is missing!<br>";
}




echo "Account is added ($a_username, $a_password)";
}
else
{
?>
<form method="post">
<table width="400" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="100">Username</td>
<td><input name="a_username" type="text" id="a_username"></td>
</tr>
<tr>
<td width="100">Password</td>
<td><input name="a_password" type="text" id="a_password"></td>
</tr>
<tr>
<td width="100">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td width="100">&nbsp;</td>
<td><input name="add" type="submit" id="add" value="Add Account"></td>
</tr>
</table>
</form>
<?
}
?>
</body>
</html>


Danke für eure Hilfe.
 
Hi!
Also erstes wäre es cool wenn du den code
in in die dafür vorgesehene tags setzen würdest,
dann wird das alles etwas übersichtlicher.
Wenn du wissen willst ob etwas keinen Wert hat
fragst du einfach:

PHP:
  if( $a_username == "")
  {
  //blabla...
  }

Gruß Benny
 
lol das was du geschrieben hast habe ich ja schon.
Was ich meine ist der sendet dan ein leeres feld zur db aber das soll er nicht man soll eine eingabe machen ohne eingabe soll der das nicht senden also muss ich ihn ja woll irgend wie sagen das er das stopen soll aber wie mache ich das
 
@Viper2009: Bitte halte Dich an die Nutzungsregeln, die Du beim registrieren akzeptiert hast. Du möchtest das man Dir hilft, also komm uns entgegen und schreibe so, das wir Dich auch verstehen. Rechtschreibung braucht Groß- und Kleinschreibung, sowie Punkt und Komma damit die Sätze einen Sinn ergeben. Für den der sowas schreibt ist alles klar. Wer das liest, wird sich im schlimmsten Fall denken: »Warum soll ich dem helfen? Der will ja nicht mal das ich ihn verstehe...«

Du kannst einen Beitrag editieren und Deinen Quelltext in die richtigen Tags setzen, damit er leserlicher im Forum erscheint. Wenn Du antworten kannst, solltest Du auch Korrekturen hinkriegen.

Wenn Du uns respektierst, respektieren wir Dich und helfen gerne. Denke daran...

Aber zu Deinem Problem zurück:

Der Befehl der Dir hilft ist
PHP:
die();
oder
PHP:
die("Fehler: Angabe XXX fehlt!");
oder auch
PHP:
die(header("Location: seitediegeladenwerdensoll.php"));
und nicht exit(); :)

Beispiel:
PHP:
if ($a_username=='')
{
die("Username is missing!<br>");
}
if ($a_password=='')
{
die("Password is missing!<br>");
}

Und wenn du einen Benutzernamen nicht haben willst, dann mach das gleiche wie bei fehlenden Angaben:

PHP:
if($a_username=='viper') || if ($a_usernamen=='Viper'){
die("Dieser Benutzername darf nicht verwendet werden!");
}
 
Hi entschulige aber ich war im stress und wusste nicht wie ich mich ausdrücken sollte.

PHP:
if ($a_username=='')
{
echo "Username is missing!<br>";
}
if ($a_password=='')
{
echo "Password is missing!<br>";
}
also was ich sagen will ist,

PHP:
if ($a_username=='')
wenn das Feld leer ist, also wenn man kein Benutzer name eingegeben hat, aber einPW (bsp. 1234) so sagt er mir zwar das er
"Username is missing" ist aber erstellt dennoch eine Datei.
Und in mein mysql Datenbank ist dan eine Zeile a_username=leer und a_password= bsp 1234.

Das soll er aber nicht machen, also mus ich ihn doch sagen wenn missing ist brich das ADD ab.
Vieleicht so aber das geht nicht.

PHP:
if ($a_username=='')
{
isset.abort();
echo "Username is missing!<br>";
}

{
isset.abort();
echo "Password is missing!<br>";
}

Bitte ich weis nicht mehr weiter. Ich hoffe so ist es besser. So noch mal verbessert :(
 
Zuletzt bearbeitet:
Und mein die() löst genau Dein Problem ...
Ab die() läuft nix mehr weiter. Also probier es aus bevor Du schreibst das es nicht geht.
 
ok ich habe es nun hin bekommen
PHP:
<?

if(isset($_POST['add']))
{
$a_username = $_POST['a_username'];
$a_password = $_POST['a_password'];


 if ($a_username=='')
{
die ("Username is missing!");
}
if ($a_password=='')
{
die ("Password is missing!");
}  

$query = "INSERT INTO $table (a_username, a_password) VALUES.... und so weiter

So nun meine andere Frage und zwar wie kann ich das machen, das wenn in der DB schon ein benutzer Name ist und man registriert genau den gleichen Namen so das er sagt "dieser Name existiert bereits".
 
Zurück