2 Arrays ineinander

[grueni]

Lt. Commander
Registriert
Okt. 2008
Beiträge
1.293
Hey ;)
Ich hab folgendes Problem.
In einem HTML Dokument hab ich folgende Tabelle:
Code:
<td><li><input type="text" name="field_product[]" value= "" size=10></li></td>
<td><input type="text" name="field_value[]" value= "" size=1 maxlength=2></td>

Also 2 Arrays, diese sollen nun in einem PHP Dokument ausgewertet werden und zwar so, dass die Ausgabe so aussieht: Nudeln (field_product) 2 (field_value)
Also das hinter dem Produkt die Anzahl erscheint (field_value).

Gelöst bekommen kriege ich es nicht, habe bis jetzt nur geschafft das ganze untereinander zu bekommen mit 2 foreach Abfragen.

Code:
foreach($_REQUEST['field_product'] as $product){ 
		if(strlen($product)<=0){
			echo '';
		}
		else{
			echo $product.'<br>';  
			} 
		
	}
	
	foreach($_REQUEST['field_value'] as $value){ 
		if(strlen($value)<=0){
			echo '';
		}
		else{
			echo $value.'Stk<br>';  
			} 
	}

Wie muss ich die beiden Schleifen ineinander verschachteln um mein gewünschtes Ergebnis zu bekommen :) ?

Vielen Dank fürs Lesen und die Hilfe :)
 
for- statt foreach-Schleifen?

Gruß
 
$k=0;
$i=count($field_product);

while ($k < $i)
{
echo $product[$k]; echo ("<br>");
echo $value[$k];
$k++;
}

Count zählt die Anzahl der Einträge im Array.
Die Schleife wird daher genauso oft durchgeführt bis jedes Element ausgelesen ist.
$k wird als Zähler genommen und als Index von den jeweiligen Arrays.

Damit müsstest du an dein Ziel kommen und beides hintereinander ausgeben können.
 
Ein input-Feld als Array? Was soll das bringen? Dort kannst du nur einen Wert eingeben. Falls du eine Mehrfachauswahl willst, bleibt dir nur select übrig.
 
Jap ^^ das sollte nur ein Beispiel sein wie diese aussehen :)
Ich gehe einmal die Lösungsvorschläge durch und melde mich dann noch einmal :)

Vielen Dank euch allen
Ergänzung ()

Oki hab es hinbekommen mit dem Code von Suxxess ;)
Besten Dank an dieser Stelle:)

Code:
$k=0;
$product = $_REQUEST['field_product'];
$value = $_REQUEST['field_value'];
$i=count($product);
$x=count($value);

while ($k < $i)
{
	if(strlen($product[$k])<=0 AND strlen($value[$k])<=0){
		echo '';
	}
	elseif(strlen($value[$k])<=0){
		echo $product[$k].' ';
		echo '1';
		echo '<br>';
	}
	else{
		echo $product[$k].' '; 
		echo $value[$k];
		echo '<br>';
	}
$k++; 
}

So schauts nun fertig aus. Danke & LG
 
Zuletzt bearbeitet:
Zurück
Oben