SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 07.09.2004, 09:00:34
edv-rs edv-rs ist offline
Anfänger
 
Registriert seit: Aug 2004
Beiträge: 25
Array (Listenfeldauswahl) per POST weitergeben

Hallo,

gestern war ich noch zuversichtlich die Aufgabe selbst zu lösen. Aber nun, nach der Suche in diversen Foren und bei Google, fehlt mir leider immer noch die Lösung.

Ich bekomme die Multiauswahl eines Listenfeldes nicht auf die Folgeseite. Es wird in den Beiträgen immer auf das Funktionspaar serialize/unserialize verwiesen. Aber wie stelle ich es bei meinem Listenfeld an? Bei SESSION weiß ich auch nicht, wie ich die Werte aus dem Listenfeld in einer entsprechenden Variable speichern kann.

Momentan sieht es so aus:
PHP-Code:
<?PHP
$seite 
508;
echo 
"Übergabe: ";
print_r($_POST);
echo 
"<br>";

$fkt = (isset($_GET['fkt'])) ? $_GET['fkt'] : "X";
if (
$fkt=="X")
 {echo 
"<form name='test' method='post' action='index.php?id=" $seite "&fkt=A'>";
   echo 
"<select name='Listenfeld[]' multiple='multiple' size='15'>";
   echo 
"<option>Eins";
   echo 
"<option>Zwei";
   echo 
"<option>Drei";
   echo 
"<option>Vier";
   echo 
"<option>Fünf";
   echo 
"<option>Sechs";
   echo 
"<option>Sieben";
   echo 
"<option>Acht";
   echo 
"<option>Neun";
   echo 
"<option>Zehn";
   echo 
"<option>Els";
   echo 
"<option>Zwölf";
   echo 
"<option>Dreizehn";
   echo 
"<option>Vierzehn";
   echo 
"<option>Fünfzehn";
   echo 
"<option>Sechszehn";
   echo 
"<option>Siebzehn";
   echo 
"</select>";
   echo 
"<input type='submit'></form>";
 }
else
  {
//die Anweisung kann [B]nicht[/B] funktionieren, da ich kein serilize() habe!
   
$Wert[]=unserialize($_POST['Listenfeld']);
// aber auch $Wert[]=$_POST['Listenfeld']; funktioniert nicht
   
$anz=count($Wert);
   echo 
"Es sind " $anz " Einträge übergeben worden.";
  }
?>
Ich bekomme am Ende nichts ausgegeben. Die Ausgabe von print_r($_POST) sieht so aus:
Zitat:
Array ([Listenfeld] => Array ( [0] => Zwei [1] => Drei [2] => Vier [3] => Fünf ) )
Die Übergabe erfolgt nach den Hinweisen in oben verlinkten Beitrag. Irgendwie fehlt mir hier der Groschen für die Mark. In der FAQ wird zu diesem Thema auf die SESSION verwiesen, nur wie bekomme ich dann die gewählten Einträge aus dem Listenfeld nach dem Absenden da hinein?

Gruß und Dank Rainer
Mit Zitat antworten
  #2  
Alt 07.09.2004, 09:14:59
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Ein Beispiel:
PHP-Code:
<pre>
<?php
if (isset($_POST['list'])) {
    
print_r($_POST);

    foreach (
$_POST['list'] as $k => $v) {
        echo 
"$k - $vn";
    }
}
?>
</pre>

<form method='post'>
    <select name='list[]' multiple>
        <option>A
        <option>B
        <option>C
        <option>D
        <option>E
        <option>F
        <option>G
        <option>H
    </select><br>
    <input type='submit'>
</form>
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #3  
Alt 07.09.2004, 09:17:38
chris17 chris17 ist offline
Senior Member
 
Registriert seit: Apr 2003
Alter: 57
Beiträge: 1.236
Hi,

in Deinem Bsp. willst Du doch erstmal die gewählten Werte ausgeben, oder? Die Weitergabe ans nächste Skript steht dann noch aus...
PHP-Code:
if ($fkt=="X") {
// Formular
/*
    Es ist besser einen value="" zuzuweisen.
*/
echo "<option value='Zwei'>Zwei";

// Ende Formular
} else {
    
$wert $_POST['Listenfeld'];

    echo 
'&Uuml;bergebene Werte:<br>';
    for (
$i 0$i count($wert); $i++) {
        echo 
$wert[$i].'<br>';
    }


edit:

...bissl zu langsam, c4 war schneller, sorry.

Mit Zitat antworten
  #4  
Alt 07.09.2004, 09:31:30
edv-rs edv-rs ist offline
Anfänger
 
Registriert seit: Aug 2004
Beiträge: 25
Hallo c4 und chris17,

Danke für Eure Vorschläge damit funktioniert das Auslesen der Werte auf zwei Wegen.

Ich hatte es mit $wert[] = $_POST['Listenfeld']; schon probiert, hat aber nicht geklappt. Nun weiß ich auch warum, das []-Klammerpaar darf dort nicht stehen.

Ich bin weiterhin guten Mutes mich auch in PHP bald "heimisch" zu fühlen, was, Dank der Unterstützung im Forum, bestimmt recht schnell gehen kann.

Gruß und Dank Rainer
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:20:18 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt