Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 
Script Seite

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 ICQ Generator
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog Verzeichnis

Partner
Sprüche Treff

Goneo.de
Bei diesen Anbieter bekommt man Webspace, Domains,...
http://www.Goneo.de
Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
http://www.Hosterplus.de
 
 
 

Formulareingabe aus den Tutorials habe ein Problem

Sie befinden sich: Home > Forum > Php > Formulareingabe a...

Wenn Sie einen Beitrag in diesem Forum schreiben möchten, so ist es erforderlich, dass Sie ein
 Benutzerkonto registrieren.

In diesen Beitrag wurden 4 Nachrichten geschrieben.

Formulareingabe aus den Tutorials habe ein Problem
Nachricht wurde verfasst am 26.11.2011 um 09:36 Uhr von Drbishop
Hallo Liebe Gemeinde,

erst mal ein Dankeschön an den Admin für die Webseite und das Tutorial zu eingabe von Formulardaten in eine MySQL DB. Ich verwende diese Vorlage und diese funktioniert. Allerdings habe ich ein Problem.

Im bereich:

if ($_POST['senden'] != ''
AND $_POST['konname'] != ''
AND $_POST['konplz'] != ''
AND $_POST['konort'] != ''
) {

werden die "Mussfelder" deklariert, auch das funktioniert. Ich bekomme es aber nicht hin das eine Fehlermeldung ausgespuckt wird wenn ein Feld nicht eingegeben wurde. Jediglich das Formular wird neu geladen. Wenn ich ein DB Fehler habe dann kommt die Java Meldung, sonst jedoch nicht. Vielleicht kann wer helfen, wie muss ich es anpassen?

hier mal ein Scriptschnipsel:

......
if (!isset($_POST['konstr'])) $_POST['konstr'] =
'';
if (!isset($_POST['kontxt'])) $_POST['kontxt'] =
'';

if ($_POST['senden'] != ''
AND $_POST['konname'] != ''
AND $_POST['konplz'] != ''
AND $_POST['konort'] != ''
) {



if (!$dz) {
die('keine Verbindung möglich: ' .
mysql_error());
}

$sql_insert = "INSERT INTO `***`

(`UserID`,`L1ID`,`KonzernAktiv`,`KonzernName`,`KonzernPLZ`,`KonzernOrt`,`KonzernStrasse`,`KonzernInfo`)
VALUES( '$userid',
'".mysql_escape_string($_POST['konl1id'])."',
'".mysql_escape_string($_POST['konstatus'])."',
'".mysql_escape_string($_POST['konname'])."',
'".mysql_escape_string($_POST['konplz'])."',
'".mysql_escape_string($_POST['konort'])."',
'".mysql_escape_string($_POST['konstr'])."',
'".mysql_escape_string($_POST['kontxt'])."'
);";


if (@mysql_query($sql_insert, $dz) != false)
{

echo $_POST['konname'] == '';
echo $_POST['konplz'] == '';
echo $_POST['konort'] == '';

echo "<meta http-equiv=\"refresh\" content=\"0; URL=vpkonzern.php?u=$userid&i=1\">";

} else {
echo "<script type='text/javascript' language='javascript'>";
echo " alert('Bitte alle Pflichtfelder ausfuellen!');";
echo "</script>";
}

@mysql_close($dz);


}

.... Formular.....
 
Nachricht wurde verfasst am 27.11.2011 um 07:05 Uhr von Schubertmedia Schubertmedia
Morgen,

ich würde die Ausgabe nach dem absenden vom Formular machen. Da du die Variable $_POST['senden'] nutzt um herauszufinden, ob das Formular abgesendet wurde, kannst du diese dazu nutzen um eine Formularüberprüfung zu realisieren. Hier ein kleines Beispiel wie ich dies machen würde:

 

if ($_POST['senden'] != '' AND $_POST['konname'] != ''){
echo 'Bitte gebe ein Kontoname am!';
exit;
}


alternativ kannst anstatt eines exit auch deine Daten in einer Variable ( http://www.php-space.info/php/space/php-variablen-und-deren-verwendung.php ) speichern und bei der Ausgabe von Formular deine Fehlermeldung vorher ausgeben. Mein Code Beispiel müsstest du vor:

 


if ($_POST['senden'] != ''
AND $_POST['konname'] != ''
AND $_POST['konplz'] != ''
AND $_POST['konort'] != ''
) {
//...
}


einfügen. Ich hoffe ich konnte dir bei deinem Problem helfen.

Grüße Nico
Nachricht wurde verfasst am 28.11.2011 um 08:09 Uhr von Drbishop
Guten Morgen Nico,

als erstes vielen Dank für Deine Hilfe aber es klappt nicht. Die Meldung erscheint nun wenn ich das Forumular ganz ausgefüllt habe und nicht wenn das Feld leer bleibt. Kannst Du noch mal schauen wäre echt super!!! Hier das veränderte Script:

 

session_start();
include("../inc/mysql_inc.php");
include_once('../inc/sessionhelpers.inc.php');
if ( !logged_in() ) {
header ("Location: ../login.php");
}
if ( logged_in() ) {

require("vphead.php");

}
$userid = $_SESSION['user_id'];


if (!isset($_POST['senden'])) $_POST['senden'] =
' ';
if (!isset($_POST['konname'])) $_POST['konname'] =
'';
if (!isset($_POST['konplz'])) $_POST['konplz'] =
'';
if (!isset($_POST['konort'])) $_POST['konort'] =
'';
if (!isset($_POST['konstatus'])) $_POST['konstatus'] =
'';
if (!isset($_POST['konl1id'])) $_POST['konl1id'] =
'';
if (!isset($_POST['konstr'])) $_POST['konstr'] =
'';
if (!isset($_POST['kontxt'])) $_POST['kontxt'] =
'';


if ($_POST['senden'] != '' AND $_POST['konname'] != ''){
echo 'Bitte gebe ein Kontoname am!';
exit;
}



if ($_POST['senden'] != ''
AND $_POST['konname'] != ''
AND $_POST['konplz'] != ''
AND $_POST['konort'] != ''
) {



if (!$dz) {
die('keine Verbindung möglich: ' .
mysql_error());
}

$sql_insert = "INSERT INTO `konzern`

(`UserID`,`L1ID`,`KonzernAktiv`,`KonzernName`,`KonzernPLZ`,`KonzernOrt`,`KonzernStrasse`,`KonzernInfo`)
VALUES( '$userid',
'".mysql_escape_string($_POST['konl1id'])."',
'".mysql_escape_string($_POST['konstatus'])."',
'".mysql_escape_string($_POST['konname'])."',
'".mysql_escape_string($_POST['konplz'])."',
'".mysql_escape_string($_POST['konort'])."',
'".mysql_escape_string($_POST['konstr'])."',
'".mysql_escape_string($_POST['kontxt'])."'
);";


if (@mysql_query($sql_insert, $dz) != false)
{

echo "<meta http-equiv=\"refresh\" content=\"0; URL=vpkonzern.php?u=$userid&i=1\">";
exit;
} else {
echo "<script type='text/javascript' language='javascript'>";
echo " alert('Bitte alle Pflichtfelder ausfuellen!');";
echo "</script>";
}

@mysql_close($dz);


}

echo '<form name="konzern" action ="'.htmlspecialchars($_SERVER['PHP_SELF']).'" method="post">';//formular......


Viele Grüße
Roman
Nachricht wurde verfasst am 18.12.2011 um 23:39 Uhr von Schubertmedia Schubertmedia
Hallo Roman,

du musst prüfen ob deine Formularfelder leer sind.

Suche den Code:

 

if ($_POST['senden'] != '' AND $_POST['konname'] != ''){


Und ersetze diesen mit:
 

if ($_POST['senden'] == '' AND $_POST['konname'] == ''){



Grüße Nico
  Antwort schreiben