Antworten
Code: In Zwischenablage kopieren (nur IE)
*** Nobody ***
2.
Bau doch einfach Bedingungen in der php ein. Wenn feld 2 und 3 nicht ausgefüllt sind -> Fehlermeldung und zurück zum Formular.
Edit:
Da war ich wohl zu spät. Und nicht so ausführlich.
3.
Vielen Dank für die schnelle Antwort,
Ich habe es jetzt mal testweise nur für email und vornamen, so probiert:
<[color="orange"]?
$errText = "";
$name = "";
$email = "";
if (isset($_POST["eintragen"]))
{
$name = $_POST["vorname"];
$email = $_POST["email"];
if (! strlen ($vorname) || ! strlen ($email))
{
$errText = "Nicht alle erforderlichen Felder ausgefüllt";
}
else
{
echo "Alles Paletti";
}
}
if (strlen ($errText) || ! isset ($_POST["eintragen"]))
{
?>
<html>
<head>
<title>Formular</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="460" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="460">
<form action="kontakte_einfuegen.php" method="post">
<table width="460" height="566" border="0" align="center" cellpadding="3" cellspacing="1" class="table">
<?
if (strlen ($errText))
{
echo" <tr>\n";
echo" <td colspan='2'><font color='#FF0000'>$errText</font></td>\n";
echo" </tr>\n";
}
?>
<tr>
<td colspan="2" class="head" height="17" align="left">Stammdaten Studio-Kontakte </td>
</tr>
<tr>
<td class="main" colspan="2" height="16">Bitte füllen Sie alle mit * markierten Felder aus. (Pflichtfelder)</td>
</tr><tr><td class="main" width="126"><p class="align">Anrede*</p></td>
<td width="319" class="main">
<input type="radio" name="geschlecht" id="mw_0" value="m">
<label for="mw_0">Herr</label>
<input type="radio" name="geschlecht" id="mw_1" value="w">
<label for="mw_1">Frau</label></td>
</tr>
<tr><td class="main" width="126"><p class="align">Ihr Vorname*</p></td>
<td class="main">
<input name="vorname" type="text" value="" size="20"></td></tr>
<tr>
<td class="main"><p class="align">Nachname*</p></td>
<td class="main">
<input name="nachname" type="text" id="nachname" size="20"></td>
</tr>
<tr><td class="main" width="126"><p class="align">Straße*</p></td>
<td class="main">
<input name="strasse" type="text" id="strasse" size="20"></td></tr>
<tr><td class="main" width="126"><p class="align">PLZ*</p></td>
<td class="main">
<input name="plz" type="text" id="plz" size="20"></td></tr>
<tr><td class="main"><p class="align">Ort*</p></td>
<td class="main">
<input name="ort" type="text" id="ort" size="20"></td></tr>
<tr><td class="main"><p class="align">Ihr Geburtsdatum*</p></td> und zum schluss die php endung
<?
}
?>......................usw.[/color]
funktioniert leider immernoch nicht.
Mein Submit button hat den Namen "eintragen" ich habe also "send" in "eintragen" unbenannt.
Funktioniert leider immernoch nicht.
Liegt es an der Anbindung mit der Zweiten Datei? Vielleicht muss ich den Pflichtfeld-Script doch, in der zweiten Datei realisieren.
Viele Grüße
4.
Sorry, hab noch einiges vergessen. obigen Beitrag bitte ignorieren.
5.
Zitat:
PhPStRoLcH postete
Sorry, hab noch einiges vergessen. obigen Beitrag bitte ignorieren.
vor allen Dingen, hast du vergessen, deinen Quelltext mit dem PHP Button
zu formatieren..
Schau dir mal an, wie schön bunt Nobodys Code ist,
dein Senf farbendes Zeugs, liest sich bestimmt keiner durch...
6.
Muss ich meinen Submit-button "send" nennen? Momentan ist value=eintragen und name=eintragen. Es tut sich nichts.
Habe den Code so angepasst:
[color="red"]1.
<?
$errText = "";
$vorname = "";
$email = "";
if (isset($_POST["send"]))
{
$vorname = $_POST["vorname"];
$email = $_POST["email"];
if (! strlen ($vorname) || ! strlen ($email))
{
$errText = "Nicht alle erforderlichen Felder ausgefüllt";
}
else
{
echo "Alles Paletti";
}
}
if (strlen ($errText) || ! isset ($_POST["send"]))
{
?>[/color]
[color="darkred"]2.
<?
if (strlen ($errText))
{
echo" <tr>\n";
echo" <td colspan='2'><font color='#FF0000'>$errText</font></td>\n";
echo" </tr>\n";
}
?>[/color]
[color="orangered"]
3.
<input name="vorname" type="text" value="<? echo $vorname; ?>" size="20"></td></tr>[/color]
[color="blue"]
4. Mein Submitbutton:
</tr>
<tr><td class="foot" colspan="2" align="center" height="25">
<input name="eintragen" type="submit" style="width:150px" value="eintragen">[/color]
7.
if (isset($_POST["send"])) und name="eintragen" passt nicht zueinander!
Entweder send oder eintragen, entscheide dich...
Und nutze bitte den PHP Buton!!!
8.
Zitat:
Und nutze bitte den PHP Buton!!!
Oder formatier den PHP Code mit Farben wenn du magst, bloss mach es richtig.
Funktionen blau, Strings rot, Kommentare gelb, usw :D
9.
Sind die PHP buttons die phpeingaben hier:
<td width="80%"><input type="text" name="name" size="20" value="[color="red"]<? [/color] [color="green"][color="blue"]echo[/color] [/color] $name; [color="red"]?>[/color] "></td>
?
Das habe ich dann gemacht. Werde es testen.
Vielen Dank
10.
na, was ist denn da pssiert:
den meine ich: [color="orangered"]<? echo $name; ?>[/color]
11.
Code: In Zwischenablage kopieren (nur IE)
So und jetzt klicke mal auf zitatantwort
Der PHP Button findet sich direkt unter dem Farbauswähler
und den hast du doch auch schon gefunden.....
12.
[quote]
combie postete Code: In Zwischenablage kopieren (nur IE)
So und jetzt klicke mal auf zitatantwort
Der PHP Button findet sich direkt unter dem Farbauswähler
und den hast du doch auch schon gefunden.....[/quote] das geht leider immernoch nicht. habe alle hier stehenden fehlerhinweise ausgeführt und [color="orangered"]<?php[/color] für beide felder, namen und email hinzugefügt. Habe es auch probiert indem ich[color="orangered"]"php"[/color] an die anderen [color="orangered"]"<?"[/color] anfangszeichen gesetzt habe. Klappt leider nicht. Die daten werden immernoch auch mit leerem formular übermittelt.
Mein Submitbutton stimmt mit den scriptdaten jetzt überein.
13.
Das Problem ist ganz klar hier (rot markiert):
<form method="POST" [color="orangered"]action="kontakte_einfuegen.php"[/color] >
Wenn ich [color="red"]action=""[/color] schreibe klappt es.
Also nocheinmal auf meine Frage von ganz oben zurück. Wie schaffe ich es dass es auch mit Dateianbindung zu einer Pflichteingabe kommt.
Vielen Dank für die Unterstützung bisher.
14.
Warum um alles in der Welt willst du da noch ein Script dazwischen schieben?
Dort, wo "Alles Paletti" steht, fügst du deinen Kontakt ein und leitest danach auf eine andere Seite weiter.
*** Nobody ***
15.
Ich probiers jetzt mal. Scheint logisch was du sagst...... wäre ich nicht drauf gekommen. Danke!
ich schreib obs geklappt hat. mom
16.
Zitat:
PhPStRoLcH postete
Ich probiers jetzt mal. Scheint logisch was du sagst...... wäre ich nicht drauf gekommen. Danke!
ich schreib obs geklappt hat. mom
nee das geht nicht, wenn ich den vollständigen "script" der zweiten phpdatei zwischen die anführungszeichen von
[color="orangered"]echo "Alles Paletti";[/color] kopiere. Die Zweite datei benötige ich um die daten vom Formular auf die Datenbank zu übertragen. Dazu brauche ich diese zwei dateien.
[color="purple"]datenübertragen.php[/color] ist mit[color="purple"] formular.php[/color] verknüpft über [color="red"]action="datenübertragen.php"[/color] .
welche möglichkeit gibt es. Kann ich eventl in [color="orangered"]echo "Alles Paletti";[/color] eine verknüpfung zu "datenübertragen.php" schreiben, die wie action="datenübertragen.php" in der Forumaldatei fungiert?
17.
Zweite Datei z.B. "datenübergeben.php" auf die die formular.php datei zeigt sieht so aus:
...........
[color="orange"]// Variablen aus dem Forumlar übernehmen[/color]
[color="darkred"]$vorname=$_POST["vorname"];
$nachname=$_POST["nachname"];[/color]
[color="orange"]// Überpruefen ob der Kunde schon vorhanden ist[/color]
[color="darkred"]$query1 = "SELECT nachname FROM kontakte WHERE nachname LIKE '$nachname' and vorname LIKE '$vorname' "; [/color]
[color="red"]$result = mysql_query($query1);[/color]
[color="orange"]// Fehlermeldung ausgeben, bzw. Kunden einfuegen[/color]
[color="blue"]$num=mysql_NumRows($result);
if ($num) {
echo "Kontakt schon vorhanden!";
}
else
{ [/color]
[color="deeppink"]$query2="INSERT INTO kontakte
SET geschlecht='$geschlecht',
vorname='$vorname',
nachname='$nachname', ..... [/color]
Kann ich hier vielleicht nach dem script:
[color="orange"]// Variablen aus dem Forumlar übernehmen[/color]
[color="darkred"]$vorname=$_POST["vorname"];
$nachname=$_POST["nachname"];[/color]
...einen Script einbauen, der leere values der [color="crimson"]$vorname, %nachname,[/color] erkennt und ggf. wieder auf die formular.php zurücklinkt?
Das wär des rätsels Lösung....
18.
Ich zeige dir das nochmal mit der PHP formatierung:
Code: In Zwischenablage kopieren (nur IE)
19.
Leider haben mich alle Versuche nicht weitergebracht, da ich im "action-Feld" immer auf die zweite .php verlinken muss, in der die datenbankübertragung der $Formularfelder stattfindet. Ich muss also die Zweite Datei mit der Valueüberprüfung ergänzen. Weiss du vielleicht, was ich in die zweite datei (siehe über dieser Antwort) reinschreiben muss damit er die $vornamen, $nachnamen auf einen eingegebenen VALUE-Wert überprüft? If value = leer sollte er auf die formulardatei zurückverweisen uns eine fehlermeldung oben angeben.
Viele Grüße
PhPStRoLcH
20.
Wenn du unbedingt mit zwei Scripten arbeiten willst/musst, ist das etwas aufwändiger.
In dem zweiten Script prüfst du mit empty, ob etwas eingegeben wurde. Falls nicht, musst du eine Weiterleitung zum Formular einbauen. Man könnte vor dieser Weiterleitung die Werte von $_POST in eine Session schreiben. Damit ließe sich dann das Formular mit eventuell eingegebenem Vor- oder Nachnamen vorbelegen. Sind diese Session-Variablen gesetzt, kann man auch eine Fehlermeldung ausgeben.
*** Nobody ***