Beitrag von sascha (539 Beiträge) am Donnerstag, 10.Juli.2003, 23:01.
pflichtfelder definieren - 2 HELP
hallo,
dank des denkanstosses von ruben habe ich mein problem zum teil gelöst.
durch nachfolgendes <perl> wird ein hinweis ausgegben, welche definierten pflichtfelder noch nicht ausgefüllt wurden.
folgende probleme habe ich noch:
- der eintrag wird trotzdem abgespeichert - soll nicht :-(
- es wird nur ausgeben, wenn <option>felder nicht ausgewählt wurden,
aber nicht wenn es sich um ein <text> oder <textarea> feld handelt.
HELP !!!
sascha
if ($cmd eq "add") {
$err.="<font face=arial,helvetica size=2 color=#FF0000>
-Benutzer<br>" if ($Benutzer eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000>
-Hotelname<br>" if ($Hotel eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Kategorie<br>" if ($Kategorie eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Hotelgröße<br>" if ($Hotelgroesse eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Region<br>" if ($Region eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Bundesland<br>" if ($Bundesland eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Land<br>" if ($Land eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Programm<br>" if ($Bundesland eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Zeitraum<br>" if ($Zeitraum eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Titel<br>" if ($Angebot eq "");
$err.="<font face=arial,helvetica size=2 color=#FF0000> -Angebot" if ($Angebot eq "");
if ($err ne "") {
out "<b>Folgende Felder wurden nicht ausgefüllt:</b> <br>$err";
} else {
put;
}
}
</perl>
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 07:45.
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 09:33.
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 09:46.
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 09:56.
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 10:47.
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 11:04.
Re: pflichtfelder definieren - 2 HELP
hallo ruben,
die sache funktioniert - aber...
bei neuanlage eines datensatzes muss der user auch das
feld benutzer ausfüllen.
der datensatz wird auch angelegt, obwohl er folgende fehlermeldung zeigt:
[ Fehler: init: /usr/local/httpd/baseportal/wh/ot/domain.de/verz/template.fields konnte nicht geöffnet werden ]
Eintrag hinzugefügt...
???
sascha
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 11:45.
Re: pflichtfelder definieren - 2 HELP
mhm - nu is guter Rat teuer :-( ....
Schreibt er den Benutzername in die DB daten mit rein?
Ich glaube mich zu erinnern, dass ich ein ähnliches Problem hatte, und deshalb die Schlüsselfelder für die Relation der DBs unterschiedlich genannt habe, dann gings (bin mir aber nicht ganz sicher, ob das hier das Problem ist....)
Heisst also als Versuch:
Feld Benutzer in db nutzer so lassen, in db daten umbenennen meinetwegen in "Nutzername"; dann natürlich nicht vergessen, alle Abfragen und Filtereinstellungen für Anzeigen aus db daten umzuändern.....
HTH
Ruben
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 13:45.
Re: pflichtfelder definieren - 2 HELP
hallo ruben,
wenn ich das feld umbenenne kann ich mich aber nicht mehr einloggen.
folgende fehlermeldung:
[ Fehler: sel: Feld (Benutzer) in /domain.de/verz/db_daten nicht vorhanden
Ursache: Das Feld Benutzer wurde in der Datenbank nicht definiert. Vielleicht haben Sie sich bei der Abfrage auch nur verschrieben?
Lösungen: 1. Korrigieren Sie Ihre Abfrage. 2. Gehen Sie in Ihren privaten Bereich (Anmelden), wählen Sie die entsprechende Datenbank aus, klicken Sie auf 'Felder' und fügen Sie das gewünschte Feld hinzu. ]
Keine Einträge vorhanden.
hier das verursachende perl im template:
<perl>
if($namerein ne "")
{
get "Benutzer==!$namerein", "nutzer";
if($Passwort ne "" && $Passwort eq $pwrein)
{
do_all "Benutzer==!$namerein action=all db=db_daten databack=FFFFFF headback=D9D9D9 headbold=1 headalign=left border=D9D9D9 spacing=1 padding=2 gridcolor=0C2545 datasize=-2 dataface=arial,helvetica sort^=Hotel range^=0,5 pagebrowse=top buttonbrowse=no listtype=list searchfields=Programm,Zeitraum formfields=-EMail allfields=-EMail listfields=-EMail,Angebot,Anmerkungen,Id input=link" , "namerein", "pwrein";
} else
{
out "<b>Anmeldung fehlgeschlagen!</b>";
$namerein="";
}
}
sascha
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 13:56.
Re: pflichtfelder definieren - 2 HELP
jo - das meinte ich ja mit ändern der Filterbedingungen.
muss jetzt heissen:
---schnipp
....
if($Passwort ne "" && $Passwort eq $pwrein)
{
do_all "neuerfeldname==!$namerein action=all db=db_daten databack=FFFFFF headback=D9D9D9 headbold=1 headalign=left border=D9D9D9 spacing=1 padding=2 gridcolor=0C2545 datasize=-2 dataface=arial,helvetica sort^=Hotel range^=0,5 pagebrowse=top buttonbrowse=no listtype=list searchfields=Programm,Zeitraum formfields=-EMail allfields=-EMail listfields=-EMail,Angebot,Anmerkungen,Id input=link" , "namerein", "pwrein";
} else
....
----schnapp
wobei für neuerfeldname der Feldname aus der db daten für den Nutzernamen stehen muss
HTH
Ruben
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 14:36.
Re: pflichtfelder definieren - 2 HELP
hi ruben,
habe den benutzer in der db_daten geändert und auch im template.
trotzdem kommt folgende fehlermeldung bei neueingabe ???!!
Fehler: init: /usr/local/httpd/baseportal/wh/ot/domain.de/verz/tempalte.fields konnte nicht geöffnet werden ]
Eintrag hinzugefügt...
das template:
<perl>
if($namerein ne "")
{
get "Benutzer==!$namerein", "gi_nutzer";
if($Passwort ne "" && $Passwort eq $pwrein)
{
do_all "Hotel_ID==!$namerein action=all db=d_gi_arr1 databack=FFFFFF headback=D9D9D9 headbold=1 headalign=left border=D9D9D9 spacing=1 padding=2 gridcolor=0C2545 datasize=-2 dataface=arial,helvetica sort^=Hotel range^=0,5 pagebrowse=top buttonbrowse=no selectbrowse=top listtype=list searchfields=Programm,Zeitraum formfields=-EMail allfields=-EMail listfields=-EMail,Angebot,Anmerkungen,Id input=link" , "namerein", "pwrein";
} else
{
out "<b>Anmeldung fehlgeschlagen!</b>";
$namerein="";
}
}
sascha
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 15:47.
Re: pflichtfelder definieren - 2 HELP
mhm - fehlt der Parameter db=dbname noch im do_all, als erstes:
{
do_all "db=deindbname Hotel_ID==!$namerein action=all db=d_gi_arr1 databack=FFFFFF headback=D9D9D9 headbold=1 headalign=left border=D9D9D9 spacing=1 padding=2 gridcolor=0C2545 datasize=-2 dataface=arial,helvetica sort^=Hotel range^=0,5 pagebrowse=top buttonbrowse=no selectbrowse=top listtype=list searchfields=Programm,Zeitraum formfields=-EMail allfields=-EMail listfields=-EMail,Angebot,Anmerkungen,Id input=link" , "namerein", "pwrein";
} else
...
dann sollte es aber hoffentlich gehen...
HTH
Ruben
Antworten
Beitrag von sascha (539 Beiträge) am Samstag, 12.Juli.2003, 22:17.
Re: pflichtfelder definieren - 2 HELP
hi ruben,
erstmal danke für die buch-tipps.
was deinen hinweis mit dem fehlenden db-namen betrifft,
der ist drin und die fehlermeldung kommt trotzdem!
fehlermeldung:
Fehler: init: /usr/local/httpd/baseportal/wh/ot/domain.de/verz/tempalte.fields konnte nicht geöffnet werden ]
temlate-auschnitt:
<perl>
if($namerein ne "")
{
get "Benutzer==!$namerein", "nutzer";
if($Passwort ne "" && $Passwort eq $pwrein)
{
do_all "Hotel_ID==!$namerein action=all db=db_namen databack=FFFFFF headback=D9D9D9 headbold=1 headalign=left border=D9D9D9 spacing=1 padding=2 gridcolor=0C2545 datasize=-2 dataface=arial,helvetica sort^=Hotel range^=0,5 pagebrowse=top buttonbrowse=no selectbrowse=no listtype=list searchfields=Programm,Zeitraum formfields=-EMail allfields=-EMail listfields=-EMail,Angebot,Anmerkungen,Id input=link" , "namerein", "pwrein";
} else
{
out "<b>Anmeldung fehlgeschlagen!</b>";
$namerein="";
}
}
sascha
Antworten
Beitrag von hempelr (1976 Beiträge) am Sonntag, 13.Juli.2003, 09:34. WWW: hempelr@gmx.de
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von sascha (539 Beiträge) am Sonntag, 13.Juli.2003, 14:37.
@ruben - pflichtfelder
hi ruben,
screenshot und template habe ich dir gemailt.
die templates und db`s sind alle im selben verzeichnis.
du hast gerade meinen groschen fallen lassen:
...Fehlermeldung besagt, dass er auf die Datenbank Namens template nicht zugreifen kann. Hast du die db_daten vielleicht in nem anderen Verzeichnis stehen als das Login-Ausgabetemplate...
die fehlermeldung hat immer den namen meines 2. login-templates angezeigt, aber immer eine db erwartet!!
durch den login komme ich ins template "eingabe".
da aber meine db_daten nicht "eingabe" heißt, kommt die fehlermeldung!
jetzt habe ich dem "eingabe" template den namen der db_daten gegeben.
jetzt kommt zwar nicht mehr die fehlermeldung, doch die datensätze werden 2x in die db geschrieben.
gruß
sascha
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 13:56.
Re: pflichtfelder definieren - 2 HELP
hi ruben,
sorry, bin heute echt nervig.
mir ist noch etwas bei den pflichtfeldern aufgefallen.
das funzt nur bei neuanlage.
gibt es auch einen trick, damit das grundsätzlich gefragt wird, d.h.
auch bei änderungen?
dank dir
sascha
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 11.Juli.2003, 15:54.
Re: pflichtfelder definieren - 2 HELP
Antworten
Beitrag von sascha (539 Beiträge) am Freitag, 11.Juli.2003, 17:26.
a special thanx to ruben :-)
hi ruben,
erstmal vielen dank, daß du mir so umfangreich und auch schnell geholfen hast - the best support i ever had :-)
ich glaube, jetzt sind alle bretter, die mir vorm kopf hingen, weg.
hab`s zwar noch nicht live testen können, aber von der logik her müßte es passen.
eine frage noch was perl betrifft:
gibt es eine buchempfehlung für perl-neulingen?
ich bin zwar kein fan von büchern, doch für den einstieg
wäre sowas vielleich doch nicht schlecht.
danke
sascha
Antworten
Beitrag von hempelr (1976 Beiträge) am Samstag, 12.Juli.2003, 13:37.
Dank gilt allen - Re: a special thanx to ruben :-)
hey - gern geschehn - ohne die vielen Helfer hier im Forum würde ich auch manches nicht hingekriegt haben und wissen - Dank an alle Forumshelfer.
Zu deiner Frage Literatur:
1. für den schnellen Einstieg - sehr informativ und für vielleicht 75% aller hier in BP möglichen Dinge geeignet:
http://www.tekromancer.com/perl/inhalt.html
Habs mir gelcih als Büchlein ausgedruckt - liegt eigentlich immer auf dem Arbeitsplatz....
2. Auch für Anfänger und unterdessen bei mir ziemlich zerfleddert, weil oft gebraucht vom knowware-Verlag Das HEft CGI & Perl für Einsteiger, ISBN87-90785-62-2 von Dirk Ammelburger - serh schön geschrieben, gute Erklärungen
http://www.knowware.de/cgiperl.htm
3. Perl - Das Einsteigerseminar vom bhv-Verlag ISBN 3-8266-7051-5 bzw. 3-8287-1032-8 mit gutem Befehlsreferenzteil, auch immer griffbereit.
http://www.amazon.de/exec/obidos/ASIN/3826670515/qid=1058009425/sr=2-1/ref=sr_aps_prod_1_1/302-5442369-5636818
Und last but not least ist das Perl-Kochbuch ein Fundus ohnesgleichen - nur halt leider etwas schwierig zu einem gegebenen Problem ne Lösung zu finden (naja - da ist soviel drin, dass man auch eine ganze Menge eh nicht richtig kapiert, bevor mans nicht braucht - ist ausserdem auch nicht ganz billig, aber fehlen sollte es eigentlich ab einer bestimmten Erfahrungsstufe nicht....) (siehe auch Link auf Homepage von BP ( http://baseportal.de/buecher.html )
CU
Ruben
Antworten