DB auf Inhalte überprüfen
Chris
- php
0 Magic Mike0 Chris0 Magic Mike0 Chris0 Magic Mike0 Chris
0 Tom
Hallo!
Ich hab folgendes Problem. Erst einmal mein Skript, damit ihr seht, um was es geht:
$name = "Chris";
$check_name = mysql_query("SELECT * FROM namen WHERE name
='$name' ");
$count = mysql_num_rows($check_name);
if ( $count >= 1){
echo "Bitte wählen Sie nen anderen Namen";
}else{
echo "Ok, alles paletti";}
So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht, wie ich das einfügen soll. Habt ihr einen Vorschlag.
Ich wäre euch sehr dankbar :-9
Moin Chris
$check_name = mysql_query("SELECT * FROM namen WHERE
name
='$name' ");
$count = mysql_num_rows($check_name);
Select * ist nicht gut, such dir einen Feldnamen aus.
if ( $count >= 1){
Pedantisch, aber hier tut es auch != 0
echo "Bitte wählen Sie nen anderen Namen";
}else{
echo "Ok, alles paletti";}
Soweit OK.
So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht, wie ich das einfügen soll. Habt ihr einen Vorschlag.
Hier wird deine Frage unklar. *SCHULTERZUCKEN*
regds
Mike
So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht, wie ich das einfügen soll. Habt ihr einen Vorschlag.
Hier wird deine Frage unklar. *SCHULTERZUCKEN*
OK, haste recht! Also ich hab ein Formular, in dem Anwenderdaten eingegeben werden sollen. Dabei wird mehrmals überprüft, ob irgendwelche Angaben fehlern oder fehlerhaft sind. Dann wird ne Fehlermeldung ausgworfen. Und das läuft über elseif.
Z.B. }elseif(!isset($_POST['telefon']) || $_POST['telefon'] == "") {
echo '<p align="center">Bitte geben Sie eine Telefonnummer an!<br><br><a href="javascript:history.back()">Zurück</a></p>';
Und so weiter. Jetzt soll das auch mit der o.g. Abfrage gemacht werden. Ich weiß nur nicht wie.
Moin Chris,
Z.B. }elseif(!isset($_POST['telefon']) || $_POST['telefon']
Zunächst bin ich kein Freund von elseif, da es meiner bescheidenen
Meinung nach einen Schlangencode ergibt.
Ich bevorzuge if Abfragen und auche gerne noch ein else, der
Nachtei dabei ist, das du bei der nächsten if Abfrage das Ergebnis
der vorherigen Abfrage berücksichtigen musst, nach dem Motto
if ( teste das wenn bisher kein Fehler )
echo '<p align="center">Bitte geben Sie eine Telefonnummer an!<br><br><:history.back()">Zurück</a></p>';
a href="javascript
Da Du mit PHP arbeitest erscheint mir das "history.back()"
eher unglücklich. Bis dahin eingegebene Daten sind dann weg, oder?
regds
Mike
Zunächst bin ich kein Freund von elseif, da es meiner bescheidenen
Meinung nach einen Schlangencode ergibt.
Ja, ich kann das aber jetzt nicht mehr alles ändern, weil ich a bisserl unter zeitdruck stehe
Moin,
Ja, ich kann das aber jetzt nicht mehr alles ändern, weil ich a bisserl unter zeitdruck stehe
poste bitte mal die entsprechende Sequence,
mit Kommentar wo war passieren soll. Bzw. wo es hängt.
regds
Mike
<?php if(!isset($_POST['submit'])) { ?>
<form action="eintrag.php" method="post">
<!-- Hier kommt das Formualar zum Eintragen. Ich hab das der Einfachheit jetzt einfach mal weggelassen -->
<?php
// die diversen Abfragen, ob AGB ok, Name ok, usw
//Hier soll auch die Benutzernamen-Abfrage rein. Also in so
//eine elseif-Schleife
}elseif(!isset($_POST['agb']) || $_POST['agb'] == ""){
echo '<p align="center">Sind Sie mit meinen AGBs nicht einverstanden?<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['benutzername']) || $_POST['benutzername'] == ""){
echo '<p align="center">Bitte geben Sie einen Benutzernamen ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['name']) || $_POST['name'] == ""){
echo '<p align="center">Bitte geben Sie einen Namen ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['strasse']) || $_POST['strasse'] == "") {
echo '<p align="center">Bitte geben Sie eine Straße ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['plz']) || $_POST['plz'] == "") {
echo '<p align="center">Bitte geben Sie eine PLZ ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['pw']) || $_POST['pw'] == "") {
echo '<p align="center">Bitte geben Sie ein Passwort ein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['pw2']) || $_POST['pw2'] == "") {
echo '<p align="center">Bitte wiederholen Sie Ihr Passwort!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['ort']) || $_POST['ort'] == "") {
echo '<p align="center">Bitte geben Sie einen Ort an!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif(!isset($_POST['telefon']) || $_POST['telefon'] == "") {
echo '<p align="center">Bitte geben Sie eine Telefonnummer an!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif($_POST['pw'] != $_POST['pw2']) {
echo '<p align="center">Die Passwörter stimmen nicht überein!<br><br><a href="javascript:history.back()">Zurück</a></p>';
}elseif (preg_match('/[^A-Z öäüÖÄÜßa-z_.-]/i', $_POST['name'])){
echo 'Ungültige Zeichen im Textfeld.';
}else{
Moin Chris,
}elseif (preg_match('/[^A-Z öäüÖÄÜßa-z_.-]/i', $_POST['name'])){
echo 'Ungültige Zeichen im Textfeld.';
}else{
Das ist leider so unübersichtlich, daß mir die Zeit fehlt das zu
durch forsten :-(
Sorry & regds
Mike
Hello,
So, also das soll überprüfen, ob es den Namen Chris schon in der DB gibt. Das klappt auch wunderbar. Jetzt soll das ganze nur ein Teil einer }elseif{..}-Schleife sein. Bloß ich weiß nicht, wie ich das einfügen soll. Habt ihr einen Vorschlag.
Es gibt keine "If-Schleifen"
Mach eine Funktion aus deiner Überprüfung. dann kannst Du sie überall aufrufen.
Liebe Grüße aus http://www.braunschweig.de
Tom