Formulare für Kundenanfragen

INQUIRY4 ist ein universelles Formularprogramm, mit dem auf einfache Art beliebige Anfrage-Formulare betrieben werden können. Es ist ein CGI-Programm, das gänzlich auf Java-Applets, Java-Scripts und Cookies verzichtet. INQUIRY4 unterstützt daher alle Browser auf dem Markt.

INQUIRY4 bearbeitet und kontrolliert die Eingaben von Anfrageformularen und sendet die Eingaben per E-Mail an einen Formularempfänger. Alternativ können alle Anfragen über den Online-Servicebereich der WEBSALE AG in der Übersicht und im Detail eingesehen werden.

INQUIRY4 wurde zur Verwendung in Verbindung mit WEBSALE V8s-Shops entwickelt. Eine Nutzung von INQUIRY4 ohne Shop ist jedoch ebenfalls möglich.


Hinweis:

Die Beschreibung der Funktionsweise, der speziellen INQUIRY-Tags und Parameter finden Sie in der separaten technischen Dokumentation:
Dokumentation: Formulare für INQUIRY4

 

Leistungs-/Laufzeitbedarf und Abrechnung über Leistungseinheiten

Wie bei jedem anderen Aufruf eines Programms am Server wird auch beim Aufruf des Formularprogramms INQUIRY4 Rechenleistung benötigt. Der Leistungsverbrauch wird daher über die Leistungseinheiten mit abgerechnet.

Wenn das Formularprogramm über einen ExternInclude-Aufruf von einer Shopseite aus gestartet wird, entsteht also sowohl für den Aufruf des Programms WEBSALE als auch für den Aufruf des Programms INQUIRY Rechenleistungsbedarf und eine geringe zusätzliche Laufzeit.

Tags für INQUIRY

Grundsätzlich ist das INQUIRY ein externes Shop-Modul, das über seine eigenen Tags verfügt. Auch wenn sich die Tags z. B. für Eingabefelder von Adressdaten sehr ähneln, sind sie doch verschieden zu den Shop-Tags.

Beispiele für die unterschiedlichen Suffixe:

 

Shop-Tags

INQUIRY-Tags

Label des Eingabefeldes

A-<technischer Name>_text

~A-FirstName_text~

A-<technscher Name>_descr

~A-FirstName_descr~

HTML-Name des Eingabefeldes

A-<technischer Name>_input

~A-FirstName_input~

A-<technischer Name>_name

~A-FirstName_name~


Hinweis:

Damit eingegebene Daten im Formular ankommen und auch übergeben werden, müssen für die Eingabefelder die INQUIRY-Tags verwendet werden. Verwendet man die Shop-Tags, dann werden die Daten nicht übergeben und der Kunde kann das Formular nicht abschicken.

Die Beschreibung der speziellen INQUIRY-Tags finden Sie in der separaten technischen Dokumentation unter "Tags der Adressdaten":
Tags der Adressdaten - Dokumentation: Formulare für INQUIRY4

 

Die Beschreibungen der Tags für die Rechnungs- und Lieferadressen im Shop befinden sich in folgenden Referenzen:
Referenz: A-Tags (Rechnungsadresse)

Referenz: D-Tags (Lieferadresse)

Beispiele für das Eingabefeld für den Vorname bei der Rechnungsadresse

Der erste Code zeigt Label, Eingabefeld und Fehlermeldung auf einer Shop-Seite, z. B. ws_address_combined.htm im Bestellprozess.

<label for="~A-FirstName_input~" class="~A-FirstName_error~">
   ~A-FirstName_text~{A-FirstName_required} *{/A-FirstName_required}
</label>
<input type="text" name="~A-FirstName_input~" maxlength="~A-FirstName_max~" value="~A-FirstName~" id="~A-FirstName_input~" class="~A-FirstName_error~">
{A-FirstName_errormessage}~A-FirstName_errormessage~{/A-FirstName_errormessage}

Der zweite Code verwendet die INQUIRY-Tags auf einem Formular-Template, z. B. anfrage.htm.

<label for="~A-FirstName_name~" class="~A-FirstName_error~">
   ~A-FirstName_descr~
</label>
<input type="text" name="~A-FirstName_name~" maxlength="56" value="~A-FirstName_value~" id="~A-FirstName_name~" class="~A-FirstName_error~">
{A-FirstName_error}Ihre Fehlermeldung{/A-FirstName_error}

Möchte man jetzt das Eingabefeld A-FirstName_name der Rechnungsadresse im INQUIRY bei eingeloggten Kunden mit dem Vornamen im Voraus ausfüllen, kann man den Value-Tag durch das Shop-Tag A-FirstName ersetzen.

<label for="~A-FirstName_name~" class="~A-FirstName_error~">
   ~A-FirstName_descr~
</label>
<input type="text" name="~A-FirstName_name~" maxlength="56" value="~A-FirstName~" id="~A-FirstName_name~" class="~A-FirstName_error~">
{A-FirstName_error}Ihre Fehlermeldung{/A-FirstName_error}

Voraussetzung ist, dass das Adressdatenfeld über die Shopkonfiguration shop.config im Abschnitt <AddressFields-Txt> freigeschaltet/aktiviert ist:
Referenz: AddressFields-Txt

Beispiele für die Unterschiede von INQUIRY- und Shop-Tags bei der Eingabe der Rechnungsadresse:

Das erste Beispiel zeigt die Eingabefelder für ein INQUIRY-Formular:

~A-Salutation_list~
~A-Title_list~
~A-Country_list~
 
<input type="text" name="~A-FirstName_name~" maxlength="~A-FirstName_max~" value="~A-FirstName~" 
   class="{A-FirstName_error}is-invalid{/A-FirstName_error}" autocomplete="given-name" placeholder="~A-FirstName_text~ *">
<input type="text" name="~A-LastName_name~" maxlength="~A-LastName_max~" value="~A-LastName~" 
   class="{A-LastName_error}is-invalid{/A-LastName_error}" autocomplete="family-name" placeholder="~A-LastName_text~ *">
<input type="text" name="~A-Street1_name~" maxlength="~A-Street1_max~" value="~A-Street1~" 
   class="{A-Street1_error}is-invalid{/A-Street1_error}" autocomplete="street-address" placeholder="~A-Street1_text~ *">
<input type="text" name="~A-ZIP_name~" maxlength="~A-ZIP_max~" value="~A-ZIP~" 
   class="{A-ZIP_error}is-invalid{/A-ZIP_error}" autocomplete="postal-code" placeholder="~A-ZIP_text~ *">
<input type="text" name="~A-City_name~" maxlength="~A-City_max~" value="~A-City~" 
   class="{A-City_error}is-invalid{/A-City_error}" autocomplete="address-level2" placeholder="~A-City_text~ *">
<input type="text" name="~A-Email_name~" maxlength="~A-Email_max~" value="~A-E-Mail~" 
   class="{A-Email_error}is-invalid{/A-Email_error}" autocomplete="email" placeholder="~A-Email_descr~ *">

Für Salutation, Title und Country gibt es für Formulare nur die Einzel-Tags, die das <select>-Element erzeugen. Die Tags für die value-Attribute sind Shop-Tags, die bei angemeldetem Käufer die Eingabefelder bereits ausfüllen.

Das zweite Code-Beispiel zeigt die Eingabefelder im Shop, z. B. im Bestellprozess auf dem Template CombinedAddress:

<select name="~A-Salutation_input~" value="~A-Salutation~" class="{A-Salutation_error}is-invalid{/A-Salutation_error}" autocomplete="honorific-prefix">
   {@A-Salutation_data}
      <option value="~A-Salutation_code~" ~A-Salutation_selected~>~A-Salutation_value~</option>
   {/@A-Salutation_data}
</select>
      
<select name="~A-Title_input~" value="~A-Title~" class="{A-Title_error}is-invalid{/A-Title_error}" autocomplete="honorific-suffix">
   {@A-Title_data}
      <option value="~A-Title_code~" ~A-Title_selected~>~A-Title_value~</option>
   {/@A-Title_data}
</select>
 
<select name="~A-Country_input~" value="~A-Country~" class="{A-Country_error}is-invalid{/A-Country_error}">
   {@A-Country_data}
      <option value="~A-Country_code~" ~A-Country_selected~>~A-Country_value~</option>
   {/@A-Country_data}
</select>
 
<input type="text" name="~A-FirstName_input~" maxlength="~A-FirstName_max~" value="~A-FirstName~" 
   class="{A-FirstName_error}is-invalid{/A-FirstName_error}" autocomplete="given-name" placeholder="~A-FirstName_text~{A-FirstName_required} *{/A-FirstName_required}">
<input type="text" name="~A-LastName_input~" maxlength="~A-LastName_max~" value="~A-LastName~" 
   class="{A-LastName_error}is-invalid{/A-LastName_error}" autocomplete="family-name" placeholder="~A-LastName_text~{A-LastName_required} *{/A-LastName_required}">
<input type="text" name="~A-Street1_input~" maxlength="~A-Street1_max~" value="~A-Street1~" 
   class="{A-Street1_error}is-invalid{/A-Street1_error}" autocomplete="street-address" placeholder="~A-Street1_text~{A-Street1_required} *{/A-Street1_required}">
<input type="text" name="~A-ZIP_input~" maxlength="~A-ZIP_max~" value="~A-ZIP~" 
   class="{A-ZIP_error}is-invalid{/A-ZIP_error}" autocomplete="postal-code" placeholder="~A-ZIP_text~{A-ZIP_required} *{/A-ZIP_required}">
<input type="text" name="~A-City_input~" maxlength="~A-City_max~" value="~A-City~" 
   class="{A-City_error}is-invalid{/A-City_error}" autocomplete="address-level2" placeholder="~A-City_text~{A-City_required} *{/A-City_required}">
<input type="email" name="~A-E-Mail_input~" maxlength="~A-E-Mail_max~" value="~A-E-Mail~" 
   class="{A-E-Mail_error}is-invalid{/A-E-Mail_error}" autocomplete="email" placeholder="~A-E-Mail_text~{A-E-Mail_required} *{/A-E-Mail_required}">

Beachten Sie bitte auch die unterschiedliche Schreibweisen für das E-Mail-Feld.

Verwendung von Shop-Tags in INQUIRY-Formularen

Wenn ein Formular über ExternInclude() auf ein Shop-Template eingebunden wird, können alle WEBSALE-Tags auf dem INQUIRY-Template verwendet werden.
Referenz: WS-ExternInclude()

Anwendungsbeispiele und vielseitig einsetzbare Materialien

Wegweiser: Integration eines INQUIRY-Formulars

Wegweiser: Formular per AJAX nachladen und absenden

Materialien: Materialien zu INQUIRY

(Anmelde-)Formular mit Datei-Upload

Kombinieren Sie ein INQUIRY-Formular mit dem WEBSALE Upload-Modul. Kunden können zu einem Anfrage- oder Anmelde-Formular beliebige Dateien hochladen.

Wegweiser: Upload-Modul für Formulare mit INQUIRY