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, 3361 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 ..
Ähnliche Inhalte
Batch & Shell
gelöst Mit zusammengesetzter Variable auf andere Variable zugreifen (2)

Frage von abiber zum Thema Batch & Shell ...

Batch & Shell
gelöst In einer Batch-Datei einen variablen Teil eines Dateinamens auslesen (5)

Frage von dh0815 zum Thema Batch & Shell ...

VB for Applications
Auswahlliste mit variablen (3)

Frage von 94451 zum Thema VB for Applications ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Microsoft Office
Office Druck fehler (18)

Frage von DaistwasimBusch zum Thema Microsoft Office ...

Windows Server
Zertifikat am DC erneuern funktioniert nicht (13)

Frage von takvorian zum Thema Windows Server ...