php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.08.2007, 00:14  
Neuer Benutzer
 
Registriert seit: 10.08.2007
Beiträge: 8
Sasser
Standard Formularprüfung - kleines Problem

Halllo!

Also ich habe mir dieses Script geschrieben, bzw. zusammengebastelt;

[php]

<?php
if ($_POST["anmelden"])
{

$msg['vorname'][1] = "Vorname fehlt
";
$msg['vorname'][2] = "Vorname (nur Buchstaben erlaubt)
";
$msg['name'][1] = "Name fehlt
";
$msg['name'][2] = "Name (nur Buchstaben erlaubt)
";
$msg['anschrift'][1] = "Anschrift fehlt
";
$msg['plz'][1] = "Postleitzahl fehlt
";
$msg['plz'][2] = "Postleitzahlt (5 Zahlen erlaubt)
";
$msg['ort'][1] = "Ort fehlt
";
$msg['ort'][2] = "Ort (nur Buchstaben erlaubt)
";
$msg['user'][1] = "Benutzername fehlt
";
$msg['password'][1] = "Passwort fehlt
";
$msg['email'][1] = "Emailadresse fehlt
";
$msg['email'][2] = "Emailadresse falsch
";


# Vorname
if ( ( !preg_match("/^[a-zäöüA-ZÄÖÜ\- ]*$/", $_POST['vorname'], $matches) ) && ( $_POST['vorname'] != "" ) )
{
$error['vorname'] = 2;
}
elseif ( $_POST['vorname'] == "" )
{
$error['vorname'] = 1;
}
# Name

if ( ( !preg_match("/^[a-zäöüA-ZÄÖÜ\- ]*$/", $_POST['name'], $matches) ) && ( $_POST['name'] != "" ) )
{
$error['name'] = 2;
}
elseif ( $_POST['name'] == "" )
{
$error['name'] = 1;
}

# Geburtsdatum
if ( $_POST['geburtsdatum'] == "" )
{
$error['geburtsdatum'] = 1;
}

# Anschrift
if ( $_POST['anschrift'] == "" )
{
$error['anschrift'] = 1;
}

# PLZ
if ( ( !preg_match("/^[0-9]{5}$/", $_POST['plz'], $matches) ) && ( $_POST['plz'] != "" ) )
{
$error['plz'] = 2;
}
elseif ( $_POST['plz'] == "" )
{
$error['plz'] = 1;
}

# Ort
if ( ( !preg_match("/^[a-zäöüßA-ZÄÖÜ\.\- ]*$/", $_POST['ort'], $matches) ) && ( $_POST['ort'] != "" ) )
{
$error['ort'] = 2;
}
elseif ( $_POST['ort'] == "" )
{
$error['ort'] = 1;
}

# Benutzername
if ( $_POST['user'] == "" )
{
$error['user'] = 1;
}

# Passwort
if ( $_POST['password'] == "" )
{
$error['password'] = 1;
}

# E-Mail-Addresse
if ( ( !preg_match("/^[\w\-\.]+@[\w\-\.]+\.[^\d]{2,4}$/", $_POST['email'], $matches) ) && ( $_POST['email'] != "" ) )
{
$error['email'] = 2;
}
elseif ( $_POST['email'] == "" )
{
$error['email'] = 1;
}


if (!$error)
{

include('config.php');

$_POST['geburtsdatum'] = $_POST['geburtsdatum_tag'].'.'.$_POST['geburtsdatum_monat'].'.'.$_POST['geburtsdatum_jahr'];

$_POST['geschlecht'] = ( $_POST['geschlecht'] == 'Herr' ? 'männlich' : 'weiblich' );


$sql = "INSERT INTO user (vorname, name, geburtsdatum, geschlecht, anschrift, plz, ort, user, password, email)
VALUES ('". $_POST['vorname']."', '". $_POST['name']."', '". $_POST['geburtsdatum']."', '". $_POST['geschlecht']."', '". $_POST['anschrift']."', '". $_POST['plz']."', '". $_POST['ort']."', '". $_POST['user']."', '". $_POST['password']."', '". $_POST['email']."')";

mysql_query($sql) or die(error_reporting());

echo"<meta HTTP-EQUIV='refresh' CONTENT='0; URL=submitted.html'>";
}
}

?> [php:4a902f52e0]

Also beim klicken auf den Submitbutton, soll die Abfrage ausgeführt werden und dann dachte ich mir, wenn kein Fehler mehr da ist wird es an die Datenbank geschickt! Geht aber nicht! Welchen Fehler mache ich???

Ist das vielleicht mein Fehler: if (!$error) ??? Denn ab da gehts nicht mehr![/php:4a902f52e0]
Sasser ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 10.08.2007, 00:25  
Neuer Benutzer
 
Registriert seit: 30.07.2007
Beiträge: 7
jjackisc
Standard

huhu,
Zitat:
$_POST['geschlecht'] = ( $_POST['geschlecht'] == 'Herr' ? 'männlich' : 'weiblich' );
bin mir nicht sicher ob das so geht aber warum nicht so:
PHP-Code:
$geschlecht $_POST['geschlecht'] == 'Herr' "männlich" "weiblich" 


Zitat:
mysql_query($sql) or die(error_reporting());
ob das geht bin ichm ir auch nihct sicher mit error_reporting gibt man doch den error level an den php ausgeben soll zum beispiel error_reporting(E_ALL)

PHP-Code:
mysql_query($sql) or die("Fehler".mysql_error()); 
laut html standard sollen doch meta tags in den header wie machst du das denn wenn du das echost ich weiß das es geht aber nutze doch die php funktionen

Zitat:
echo"<meta HTTP-EQUIV='refresh' CONTENT='0; URL=submitted.html'>";
PHP-Code:
header("Location: submitted.html"); 
viele grüße Jörg
__________________
If u want to understand recursion, u must first understand recursion
jjackisc ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ein kleines Join Problem (MySQL) susi85 Datenbanken 12 12.12.2007 20:00
Kleines problem mit meiner PHP Internetseite Clawhammer PHP Tipps 2008 2 24.10.2007 12:56
[Erledigt] Ein kleines Problem Datenbanken 2 11.01.2006 00:50
kleines Problem mit css layer Rotti HTML, Usability und Barrierefreiheit 0 08.12.2005 22:36
Sicher nur ein kleines Problem allerdings finde ich es nicht Datenbanken 8 30.10.2005 16:44
Kleines Problem Markus Biehl PHP Tipps 2005-2 7 16.10.2005 12:43
kleines Problem beim Login[Erledigt] PHP Tipps 2005-2 4 19.09.2005 18:25
Kleines Problem mit preg_replace() PHP Tipps 2005-2 3 25.07.2005 11:55
mod_rewrite kleines problem -umschreiben url PHP Tipps 2005-2 2 21.07.2005 13:16
Kleines Problem mit einem String... MortakArtos PHP Tipps 2005 2 24.01.2005 10:42
kleines Problem mit >date< PHP Tipps 2004-2 4 11.12.2004 19:42
kleines Problem PHP Tipps 2004-2 2 05.12.2004 09:44
kleines Problem mit kleinem Rätsel PHP Tipps 2004 4 30.07.2004 18:34
Kleines Problem mit Upload-Script Pimbolie1979 PHP Tipps 2004 1 28.07.2004 11:53
n kleines problem PHP Tipps 2004 18 12.07.2004 21:13

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
formularprüfung, pregmatch geburtsdatum, \$_post(\'name\')\, formularprüfung plz php

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:48 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.