Beitrag von sebastian (533 Beiträge) am Freitag, 15.Juni.2007, 13:01.
form felder leeren
hallo,
ich habe ein <form> eingabe </form>, da werden verschiedene eingaben in eine datenbbank geschrieben. nach dem put wird die seite wieder angezeigt, nur sind die formfelder noch mit den alten eingaben gefüllt. wie kann ich die forms nach dem put wieder löschen, so dass nach dem put wieder leere felder zur verfügung stehen ?
sebastian
Antworten
Beitrag von Sander (8133 Beiträge) am Freitag, 15.Juni.2007, 13:27.
Re: form felder leeren
ein selbstgeschriebenes form? am besten etwas code zeigen...
Antworten
Beitrag von sebastian (533 Beiträge) am Freitag, 15.Juni.2007, 13:33.
Re: form felder leeren
hallo sander,
ja ein selbstgeschriebenes form.
....
out "<FORM ACTION='http://de3.unifit-daten.de/cgi-bin/baseportal.pl?htx=$htx' METHOD='post' ENCTYPE='multipart/form-data'>";
out "<input type='hidden' name='cmd=' value='put'></input>";
out "<input type='hidden' name='uid=' value='$uid'></input>";
out "<input type='hidden' name='sid=' value='$_session'></input>";
out "<TABLE WIDTH='600' CELLPADDING='2' CELLSPACING='2' BORDER='0' ALIGN='CENTER'>";
out "<tr><td colspan='2' width='600' align='left'>";
out "<b><strong>HIER LEGEN SIE EINEN NEUEN KUNDEN AN:</b></strong> - Inhalt: <b><strong> $_amount_all </b></strong> Einträge </td></tr>";
out "<tr><td colspan='2' width='600'>$jahr | <a href='http://de3.unifit-daten.de/cgi-bin/baseportal.pl?htx=$htx&cmd=logout&sid=$_session'>Abmelden von $uid</a><hr></td></tr>";
out "<TR>";
#### Firmenart = WERKSTATT / GROSSHÄNDLER
out "<TR>";
out "<TD WIDTH='200' valgin='middle'>Firmenart:</TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";
out "<SELECT NAME='F_Firmenart:=' SIZE='1'>";
out "<OPTION VALUE='Werkstatt'>W E R K S T A T T</OPTION>";
out "<OPTION VALUE='Grosshandel'>G R O S S H A N D E L</OPTION>";
out "</SELECT>";
out "</td></tr>";
#### Firmenbezeichung
out "<TD WIDTH='200' valgin='middle'>Firmenbezeichung:</a></TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";
out "<INPUT TYPE='TEXT' name='F_Firmenbezeichung=' value='$F_Firmenbezeichung'>";
out "</td></tr>";
out "<TR>";
usw.
out "<tr><td colspan='2' width='600' align='right'>";
out "<INPUT TYPE='submit' VALUE='ANLEGEN' CLASS='schrift2a' STYLE='background-color:#00315A; color: white; font-size: 8pt'>";
out "</td></tr>";
#### Eingabe Hilfstext
out "<tr><td colspan='2' width='600' align='left'>";
out "<font size='-2'><LI>WICHTIG: <U>ES SOLLTEN MÖGLICHST ALLE FELDER GEFÜLLT SEIN.</U></LI>";
out "</font></td></tr>";
###
out "<tr><td colspan='2' width='600'><hr></td></tr>";
out "</table>";
dann kommt das put
{
$suchort_1="GELBE SEITEN";
put ["Firmenart", "$F_Firmenart", "Firmenbezeichung", "$F_Firmenbezeichung", "Name", "$F_Name", "Ansprechpartner", "$F_Ansprechpartner", "Strasse", "$F_Strasse", "Plz", "$F_Plz", "Ort", "$F_Ort", "Land", "$F_Land", "Telefon", "$F_Telefon", "Email", "$F_Email", "datum", "$datum", "nutzer", "$uid", "suchort" , "$suchort_1"], "adressen_unifit";
alles in einem template
sebastian
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 15.Juni.2007, 13:54.
Re: form felder leeren
probiers mal mit einem
undef %put if %put;
vor dem Formular
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 15.Juni.2007, 13:57.
sorry, falsch - aber so Re: form felder leeren
sorry, da du ja das put nach dem Formular hast, haut das dann gar nicht mehr hin, er speichert dir nix ab....
nimm das put komplett hoch (also vor das Formular) und dann danach das undef
Antworten
Beitrag von Sander (8133 Beiträge) am Freitag, 15.Juni.2007, 14:04.
Re: sorry, falsch - aber so Re: form felder leeren
es kommt gar kein %_put rüber da die Werte mit = übergeben werden...
Also ich würd vorschlagen
<perl>
if(%_put){
put undef,"dbname"; #wenn db=dem htx ist reicht ein put;
}
dann kommt das form, dort werden die daten aber per := übergeben und die Felder heißen wie in der db:
out "<TR>";
out "<TD WIDTH='200' valgin='middle'>Firmenart:</TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";
out "<SELECT NAME='Firmenart:=' SIZE='1'>";
out "<OPTION VALUE='Werkstatt'>W E R K S T A T T</OPTION>";
out "<OPTION VALUE='Grosshandel'>G R O S S H A N D E L</OPTION>";
out "</SELECT>";
out "</td></tr>";
#### Firmenbezeichung
out "<TD WIDTH='200' valgin='middle'>Firmenbezeichung:</a></TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";out "<INPUT TYPE='TEXT' name='Firmenbezeichung:=' value='$Firmenbezeichung'>";
out "</td></tr>";
out "<TR>";
jetzt stellt sich mir nur die Frage, wo kommt die Vorbelegung her? ist das nur im Falle, das die Felder nicht richtig ausgefüllt worden oder wird vorher ne db abgefragt, die schon standardwerte liefert?
Antworten
Beitrag von sebastian (533 Beiträge) am Freitag, 15.Juni.2007, 14:25.
Re: sorry, falsch - aber so Re: form felder leeren
hallo,
ein get habe ich nicht mit drinnen, habe ein init "adressen_unifit"; um die gesamtanzahl der datensätze anzuzeigen. die felder werden richtig ausgefüllt und es erscheinen immer die inhalte des letzten eingegebenen und gespeicherten daten satzes. wenn ich die seite das erstemal aufrufe sind die felder leer. liegt es an dem init ?
sebastian
Antworten
Beitrag von sebastian (533 Beiträge) am Freitag, 15.Juni.2007, 14:43.
Re: sorry, falsch - aber so Re: form felder leeren
so habe jatzt das ganze mal so wie geschrieben geändert . . .
if(%_put){ put undef,"adressen_unifit"}; #wenn db=dem htx ist reicht ein put;}
out "<FORM ACTION='http://de3.unifit-daten.de/cgi-bin/baseportal.pl?htx=$htx' METHOD='post' ENCTYPE='multipart/form-data'>";
out "<input type='hidden' name='cmd=' value='put'></input>";
out "<input type='hidden' name='uid=' value='$uid'></input>";
out "<input type='hidden' name='sid=' value='$_session'></input>";
out "<TABLE WIDTH='600' CELLPADDING='2' CELLSPACING='2' BORDER='0' ALIGN='CENTER'>";
out "<tr><td colspan='2' width='600' align='left'>";
out "<b><strong>HIER LEGEN SIE EINEN NEUEN KUNDEN AN:</b></strong> - Inhalt: <b><strong> $_amount_all </b></strong> Einträge </td></tr>";
out "<tr><td colspan='2' width='600'>$jahr | <a href='http://de3.unifit-daten.de/cgi-bin/baseportal.pl?htx=$htx&cmd=logout&sid=$_session'>Abmelden von $uid</a><hr></td></tr>";
out "<TR>";
#### Firmenart = WERKSTATT / GROSSHÄNDLER
out "<TR>";
out "<TD WIDTH='200' valgin='middle'>Firmenart:</TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";
out "<SELECT NAME='Firmenart:=' SIZE='1'>";
out "<OPTION VALUE='Werkstatt'>W E R K S T A T T</OPTION>";
out "<OPTION VALUE='Grosshandel'>G R O S S H A N D E L</OPTION>";
out "</SELECT>";
out "</td></tr>";
#### Firmenbezeichung
out "<TD WIDTH='200' valgin='middle'>Firmenbezeichung:</a></TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";
out "<INPUT TYPE='TEXT' name='Firmenbezeichung:=' value='$Firmenbezeichung'>";
out "</td></tr>";
out "<TR>";
#### Name
out "<TD WIDTH='200' valgin='middle'>Name:</a></TD>";
out "<TD WIDTH='400' valgin='top' align='right'>";
out "<INPUT TYPE='TEXT' name='Name:=' value='$Name'>";
out "</td></tr>";
out "<TR>";
usw . . .
die daten werden gespeichert, aber auch wieder angezeigt. aber nur der letzt eingegebene datensatz.
sebastian
Antworten
Beitrag von Sander (8133 Beiträge) am Freitag, 15.Juni.2007, 15:17.
Re: sorry, falsch - aber so Re: form felder leeren
na wenn du nie daten im form drin brauchst mach das value='$Firmenbezeichung' weg.
Antworten
Beitrag von sebastian (533 Beiträge) am Freitag, 15.Juni.2007, 15:22.
Re: sorry, falsch - aber so Re: form felder leeren
Antworten
Beitrag von hempelr (1976 Beiträge) am Sonntag, 17.Juni.2007, 20:04.
Re: sorry, falsch - aber so Re: form felder leeren
Antworten
Beitrag von Sander (8133 Beiträge) am Sonntag, 17.Juni.2007, 21:33.
Re: sorry, falsch - aber so Re: form felder leeren
ich seh grad, mal mit := und mal mit =
du hast warscheinlich auf das select geschaut.
ich hab auf type=text geguckt ;)
Antworten
Beitrag von hempelr (1976 Beiträge) am Montag, 18.Juni.2007, 08:39.
Re: sorry, falsch - aber so Re: form felder leeren
;-)
Da hatte ich dann wieder nicht hingesehn...
Antworten