Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Probleme mit Formularausgabe

Frage Entwicklung PHP

Mitglied: bvdcomp

bvdcomp (Level 1) - Jetzt verbinden

16.06.2009, aktualisiert 21.06.2009, 2790 Aufrufe, 6 Kommentare

Hallo zusammen
kann mir jemand sagen was hier nicht richtig ist?

Hallo zusammen
kann mir jemand sagen was hier nicht richtig ist?


kontakt.html
......
01.
<tr> 
02.
<td class="field_title">Demontage Ladeort:</td> 
03.
<td> 
04.
<select name="field24[]" id="field24" size="" class="select"> 
05.
<option value=" "> </option> 
06.
<option value="keine Demontage">keine Demontage</option> 
07.
<option value="1 Möbelstück">1 Möbelstück</option> 
08.
<option value="2 Möbelstücke">2 Möbelstücke</option> 
09.
<option value="3 Möbelstücke">3 Möbelstücke</option> 
10.
<option value="4 Möbelstücke">4 Möbelstücke</option> 
11.
<option value="5 Möbelstücke">5 Möbelstücke</option> 
12.
<option value="6 Möbelstücke">6 Möbelstücke</option> 
13.
<option value="7 Möbelstücke">7 Möbelstücke</option> 
14.
</select> 
15.
</td> 
16.
</tr>
ausgabe.php
.....
01.
<?php 
02.
$nachname = @$_POST["nachname"]; 
03.
$email = @$_POST["email"]; 
04.
$tel = @$_POST["tel"]; 
05.
$betreff = @$_POST["betreff"]; 
06.
$nachricht = @$_POST["nachricht"]; 
07.
$field24[] = @$_POST["field[]"]; 
08.
 
09.
# Inhalt der Danke E-Mail: 
10.
$inhalt ="Hallo $nachname,\nVielen Dank für Ihren Besuch bei $url. \n 
11.
Wir haben folgende Nachricht erhalten:\n\n 
12.
======== Beginn Nachricht =========\n\n 
13.
 
14.
$nachricht\n\n 
15.
Demontage Ladeort: $field24[] 
16.
 
17.
 
18.
======== Ende Nachricht ==========\n\n;
Ich hoffe ihr könnt mir weiterhelfen.

Besten Dank
Mitglied: 66268
16.06.2009 um 11:41 Uhr
müsste glaube ich

$field24[] = @$_POST["field24[]"];

statt

$field24[] = @$_POST["field[]"];

heissen
Bitte warten ..
Mitglied: Arano
16.06.2009 um 11:46 Uhr
Was IST denn da nicht richtig ?


Eigentlich sollte ich hier aufhören zu schreiben aber... ...mitleid.
Was hältst du den davon beim Nächstem mal...
    1. ...uns mitteilst was du den vorhast (welche Funktion das Script übernehmen soll)
    2. ...was das Script __nicht__ macht (ggf. Angabe der Fehlermeldung)
    3. ...die Formatierungshilfe dieses Forums verwendest um Programmcode für den Helfer lesbarer und somit den gesamten Beitrag übersichtlicher zu gestalten.

Hey, Ihr wollt doch was von uns... wieso kommt dann nur ein "Machmal richtig!" ?


So, erst einmal frage ich mich, warum die das <select> "field24[]" genannt hast ?
    1. ist der Name selbst dafür doch recht unpassend und
    2. durch die beiden eckigen Klammern wird $_POST['field24'] in PHP zu einem Array (was ja nur wirklich Sinn bei einer Mehrfachauswahl machen würde.
Also, benenne das <select> in z.B: "zuDemontieren" um und greife dessen Wert innerhalb PHP's mit $_POST['zuDemontieren'] wieder ab.

Weiter frage ich mich ob du dir der Funktion des "@" (Error Controle Operators - PHP Manual) bewusst bist ?

Und zu guter letzt:
"Alle Eingaben die von einem Benutzer kommen (egal ob User oder Admin) sind Böse und müssen überprüft werden !"

Tipp:
Schau dir mal die beiden Funktionen print_r - PHP Manual und var_dump - PHP Manual an , die können sehr nützlich bei der Fehlersuche sein ;)


~Arano
Bitte warten ..
Mitglied: dog
16.06.2009 um 11:48 Uhr
kann mir jemand sagen was hier nicht richtig ist?

Du hast dich nicht an die Formatierungsregeln im Forum gehalten - Der Link ist sogar rot hervorgehoben.

Abgesehen davon ist dein Skript der totale Horror und zeugt von vollkommner unverständnis - OK, sind alles die üblichen Anfängerfehler

01.
<select name="field24[]" id="field24" size="" class="select">
mit field24[] erzeugst du einen zweidimensionalen Speicher für einen eindimensionalen Wert. Oder auf Deutsch: Ein select-Feld kann immer nur einen Wert ausgewählt haben (Ja, es gibt auch ausnahmen), deshalb macht es in 98% der Fälle keinen Sinn, das Feld als Array zu übergeben.

Zur Verdeutlichung.
Was du derzeit bekommst:
$_POST => array( 
	feld24 => array( 
		0 => "1 Möbelstück" 
)
Was du eigentlich willst (?):
$_POST => array( 
	feld24 => "1 Möbelstück" 
)
Also, schmeiss die [] an deinem feld24 raus und du bist schon ein Stück weiter (dein Code enthält aber noch andere Fehler)

Grüße

Max
Bitte warten ..
Mitglied: bvdcomp
16.06.2009 um 13:22 Uhr
Hallo @ all

Besten Dank für die Einträge. Der Code soll folgendes machen:


- Offertenformular wird vom Kunden ausgefühlt
- Sowohl der Kunde als auch ich erhalten eine Email mit den ausgeühlten Angaben.

Das ist alles.

Ich habe ein Problem mit der Ausgabe vom Dropdown Auswahl, an sonsten funktioniert es.

Ist das Richtig? Ich haben einen Input von einem kollegen erhalten:

$field24 = @$_POST["field24"];

Ich sollte einfach die [ ] weglassen??

Thank you
Bitte warten ..
Mitglied: Arano
17.06.2009 um 00:08 Uhr
Ja, so ist das doch schon besser....

nur Hinweise
    1. Das was du von einem Kollegen bekommen hast und das was du schon für die anderen Felder benutzt hast sind ziemlich identisch, findest du nicht auch ? Könnte sein das es funktioniert...
    2. Was spricht gegen ausprobieren und
    3. Hast du unsere Beiträge gelesen ? Dort geben wir die eine Antwort auf diese Frage: "Ich sollte einfach die [ ] weglassen??"


So, gute Nacht
~Arano
Bitte warten ..
Mitglied: nxclass
17.06.2009 um 08:33 Uhr
die '[]' benötigst Du nur wenn der Benutzer die Möglichkeit haben soll mehrere Optionen auszuwählen:

01.
<select name="feld[]" multiple="multiple"> 
02.
    <option value=""> </option> 
03.
    <!-- ... --> 
04.
</select>
.. oder Bestimmte Formular Elemente gruppiert werden sollen
01.
<input type="checkbox" name="feld[]" value="1" /> 
02.
<input type="checkbox" name="feld[]" value="2" /> 
03.
<input type="checkbox" name="feld[]" value="3" />
wenn Du nur das Problem hast das Array in deine Email zu speichern:
01.
echo 'FELD24: ' . print_r( $_POST['feld24'], true ) . "\n";
Bitte warten ..
Ähnliche Inhalte
Cloud-Dienste
Probleme mit GoogleMail (Trello und Teambay)

Frage von PatrickKipp84 zum Thema Cloud-Dienste ...

Windows Server
Yoursecurecloud.de Probleme mit Pfaden (6)

Frage von WPFORGE zum Thema Windows Server ...

Mac OS X
Probleme mit Freigegebener MAC Festplatte

Frage von mark16 zum Thema Mac OS X ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (35)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (15)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (13)

Frage von Static zum Thema CMS ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...