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
GELÖST

variabler DOLLAR POST

Frage Entwicklung PHP

Mitglied: agentxi

agentxi (Level 1) - Jetzt verbinden

15.12.2006, aktualisiert 21.08.2007, 3342 Aufrufe, 4 Kommentare

Guten Abend.

ich möchte mit einer schleife alle POST's auslesen

die schleife sieht ungefähr so aus:

While ($i < 10)
{
echo '<input name="bla'.$i'" />
}
Der Generierte Code ist sauber, so wie ich ihn haben möchte. Nun möchte ich diese Felder alle auswerten:
(Auch schleife)
$bla = $_POST["feldname.$id"];

Mein Problem ist das ich diesen "dynamischen" Post nicht hinbekomme.
möchte als ergebnis es so haben:

1. Durchlauf
$bla = $_POST["feldname1"];

2. Durchlauf
$bla = $_POST["feldname2"];

...

Denke das ist schnell beantwortet
Mitglied: Dani
16.12.2006 um 00:07 Uhr
G' Abend,
probier es mal so:
01.
..... 
02.
echo "<input name='bla.".$i."'>"; 
03.
....
Gruß
Dani
Bitte warten ..
Mitglied: Guenni
17.12.2006 um 15:40 Uhr
@agentxi

Hi,

wenn du bestimmte Daten eines Formulars abfragen willst,
z.B. die Felder, die nur eine Adresse beschreiben, kannst du
diese Felder gruppieren.

01.
<form action="test.php" method="post"> 
02.
<input type="text" name="adresse[]"> 
03.
<input type="text" name="adresse[]"> 
04.
<input type="text" name="adresse[]"> 
05.
<input type="text" name="adresse[]"> 
06.
<input type="submit" value="Anzeigen" name="cmd" /> 
07.
</form>
Das sind 4 Textfelder, die zwar alle den gleichen Namen haben,
durch die eckigen Klammern "sieht" PHP diesen Variablennamen
als Array an.

Das sähe als einfache Variante z.B. so aus:

01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
02.
<html> 
03.
<head> 
04.
<title>Untitled</title> 
05.
</head> 
06.
<body> 
07.
<? 
08.
$i=0; 
09.
while($i<count($adresse)){ 
10.
 $bla[$i]=$adresse[$i]; 
11.
 $i++; 
12.
13.
for($i=0;$i<count($bla);$i++){ 
14.
  if(strlen($bla[$i])>0){ 
15.
 echo $bla[$i]."
16.
"; 
17.
18.
19.
?> 
20.
<form action="test.php" method="post"> 
21.
<input type="text" name="adresse[]"> 
22.
<input type="text" name="adresse[]"> 
23.
<input type="text" name="adresse[]"> 
24.
<input type="text" name="adresse[]"> 
25.
<input type="submit" value="Anzeigen" name="cmd" /> 
26.
</form> 
27.
</body> 
28.
</html>
Problem an der Sache ist, dass auch Leerzeichen Zeichen sind. Deshalb:

01.
for($i=0;$i<count($bla);$i++){ 
02.
  if(strlen($bla[$i])>0){  //Prüfen, ob Stringlänge größer 0 
03.
 echo $bla[$i]."
04.
"; 
05.
06.
}
Gibt jemand nun ein Leerzeichen ein, so wird das Textfeld trotzdem
ausgewertet, obwohl es ja keine sinnvollen Daten enthält.

Wenn du damit nicht zurechtkommst, wirst du wohl das Textfeld mit
einem regulären Ausdruck auf gültige Zeichen prüfen müssen.

Grüße
Günni
Bitte warten ..
Mitglied: agentxi
05.07.2007 um 13:05 Uhr
Ich habe etwas geschummelt *g*

while($i>10)
{ echo '<input type="hidden" name="data'.$i.'" />';
$i++;}

und genauso lese ich es dann über post wieder aus.
Bitte warten ..
Mitglied: masterG
21.08.2007 um 11:57 Uhr
Ich schließe diesen Thread da die Antowrt gefunden wurde und daher keine weiteren antworten nötig sind.

masterG
(Moderator)
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
VB for Applications
gelöst ComboBox mit Variabler aus Makro verknüpfen (5)

Frage von Anrion zum Thema VB for Applications ...

Windows 10
Microsoft lobt 15.000 Dollar für Remote nutzbare Bugs in Edge aus (1)

Link von runasservice zum Thema Windows 10 ...

Windows Update
Microsoft zahlt 10.000 US-Dollar für "Zwangsupdate" auf Windows 10

Link von magicteddy zum Thema Windows Update ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...