Kundendaten aus der Session in Formmailer übernehmen

Hier können Sie Fragen bezüglich der Kundenverwaltung stellen.
ulinger
Member
Beiträge: 41
Registriert: Fr 29. Okt 2004, 10:11
Wohnort: Leipzig / Mexico D.F.

Kundendaten aus der Session in Formmailer übernehmen

Beitragvon ulinger » Sa 6. Nov 2004, 02:33

Hallo

Ich habe ein Kontaktformular mit <we:form type="formmail">. Dieses Formular können sowohl eingeloggte Kunden als auch nicht registrierte Kunden aufrufen. Die nicht registrierten Kunden müssen das Formular normal ausfüllen - dafür steht auch die Funktion required zur Verfügung. Jetzt möchte ich, daß bei eingeloggten Kunden die Daten aus den Feldern der Kundenverwaltung beim Laden der Seite in den entsprechenden feldern des Formmailers erscheinen.
Ich habe probiert, SessionFields in den Formmailer einzubauen, aber die werden nicht mitgesendet.
Mein nächster Versuch war, die Sessionfield als Hiddenfelder in die Seite einzubauen und über Javascript die Daten beim Laden der Seite einzutragen. hat aber auch nicht geklappt.
Was gibt es für Möglichkeiten - auch mit JS?

Vielen Dank

lumi

Beitragvon lumi » Mo 8. Nov 2004, 08:58

Hallo!

Mit etwas PHP ist so etwas leicht möglich:

Code: Alles auswählen

<?php

$Nachname = $_SESSION['webuser']['Surname'];
$Vorname = $_SESSION['webuser']['Forename'];

?>

<we:userInput name="Name" type="text" size="46" value="$Nachname"/>
<we:userInput name="Name" type="text" size="46" value="$Vorname"/>


ulinger
Member
Beiträge: 41
Registriert: Fr 29. Okt 2004, 10:11
Wohnort: Leipzig / Mexico D.F.

Beitragvon ulinger » Mo 8. Nov 2004, 12:38

Hallo
Dazu hab ich ein paar Fragen, denn ich kenne mich in php nicht aus:

Wie und wo muß ich das Schript in die Seite einbauen?

Laut TagReferenz von WE darf we:userInput nur in formularen type=document und type=objekt verwendet werden. Oder gehen sie auch bei type=formmail? Funktioniert das Script auch mit dem HTML-Inputfeld?

Ist ['webuser'] nur eine Platzhalterbezeichnung, die durch die Feldbezeichnung des Benutzernamens ( bei mir "ID") ersetzt werden muß. oder ist es eine feste Objektbezeichnung?

Vielen Dank

Ralf Pospiech

Beitragvon Ralf Pospiech » Mo 8. Nov 2004, 18:47

der PHP Teil kann überall stehen, die beiden Felder sollten zwischen we:form eingebaut werden

ulinger
Member
Beiträge: 41
Registriert: Fr 29. Okt 2004, 10:11
Wohnort: Leipzig / Mexico D.F.

Beitragvon ulinger » Mo 8. Nov 2004, 19:23

Danke für die Antwort
Die erste Antwort war wichtig, ich hab es zwar vermutet, aber noch die Bestätigung gebraucht.
Die Frage auf die Antwort, daß die Inputfelder zwischen we:formTags kommen, habe ich nicht gestellt. dafür hötte mich eine Antwort auf meine anderen beiden Fragen interessiert. Vielleicht kommt sie noch.
Ich stell hier mal rein, was ich in meine Seite geschrieben habe:

Code: Alles auswählen

<?php 
$Username = $_SESSION['webuser']['ID'];
$Firma = $_SESSION['webuser']['Kontakt_Firma'];
$Anrede = $_SESSION['webuser']['Anrede_Anrede'];
$Titel = $_SESSION['webuser']['Anrede_Titel'];
$Vorname = $_SESSION['webuser']['Forename']; 
$Name = $_SESSION['webuser']['Surname']; 
$PLZ = $_SESSION['webuser']['Kontakt_PLZ']; 
$Ort = $_SESSION['webuser']['Kontakt_Ort']; 
$Strasse = $_SESSION['webuser']['Kontakt_Strasse']; 
$Land = $_SESSION['webuser']['Kontakt_Land']; 
$Email = $_SESSION['webuser']['Kontakt_email']; 
$Telefon = $_SESSION['webuser']['Kontakt_Telefon1']; 
$Fax = $_SESSION['webuser']['Kontakt_Fax']; 
?> 
...
<we:form type="formmail" name="Kontaktform" method="post" recipient="ulf@jenninger.de" onsuccess="638" onerror="637" onmailerror="636" subject="Nachricht aus der Celinemed-Website" order="firma,anrede,titel,vorname,name,plz,ort,strasse,land,email,telefon,fax,nachricht" required="anrede,vorname,name,plz,ort,email,nachricht" mimetype="text/plain" confirmmail="true">
<table width="555" border="0" cellspacing="0" cellpadding="0" style="margin-top:8px">
<tr>
<td width="170">Firma/Institution:</td>
<td width="385"><input type="text" name="firma" style="width:385px" value="$Firma"><input type="hidden" name="benutzername" value="$Username"></td>
</tr><tr>
<td> Anrede* / Titel:</td>
<td><select name="anrede" style="width:190px" value="$Anrede"><option>Herr</option><option>Frau</option></select><input type="text" name="titel" style="width:190px;margin-left:5px" value="$Titel"></td>
</tr><tr>
<td>Vorname*:</td>
<td><input type="text" name="vorname" style="width:385px" value="$Vorname"></td>
</tr>
... u.s.w.
Ich meine, daß ich es wie angegeben eingebaut habe. Geht aber nicht.
Dazu noch eine Frage: Beim selectfeld - kann ich da value so angeben voe oben? Normalerweise wird ja dort kein Value verwendet.

Muß ich statt ['webuser'] den Benutzernamen ['ID'] eingeben?
Woran hakt es noch?

ulinger
Member
Beiträge: 41
Registriert: Fr 29. Okt 2004, 10:11
Wohnort: Leipzig / Mexico D.F.

Beitragvon ulinger » Mo 8. Nov 2004, 21:47

Habe die Lösung gefunden:
Im Inputfeld darf nicht stehen

Code: Alles auswählen

<input type="text" name="firma" style="width:385px" value="$Firma">
sondern:

Code: Alles auswählen

<input type="text" name="firma" style="width:385px" value="<?php echo $Firma ?>">
Jetzt gehts

Was ich noch nicht rausgefunden habe: wie ich das Value in das Selectfeld bekomme.


Zurück zu „Kundenverwaltung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 16 Gäste