Schwierige Angelegenheit

LoMo

Erfahrenes Mitglied
Hi,

ich bräuchte unbedingt ein paar Tipps von euch. Ich habe folgendes vor:

Ich les aus ner Datenbank Datensätze aus, die ich in einer Tabellen ausgebe.

PHP:
			echo  '<table width="100%">
					 <tr>
					  <td><span class="Text_Fett">Einschränkungen:</span></td>
					 </tr>
					 <tr>
					  <td>&nbsp;</td>
					 </tr>
					 </table>';
				
			$db = datenbank_verbinden("xxx","xxx","xxx");
			$query = "select * from Parameter_Landkreise order by Bundesland, Bezirk, Landkreis asc";
			$rs = mysql_query($db,$query);
			
			if ($rs)
			{
				echo '<table width="100%">';
				$i = 0;
				while ($objekt = mysql_fetch_object($rs))
				{
					 echo '<tr>';
					 echo '<td><input name="'.$i++.'" type="checkbox" value="'.$objekt->Landkreis.'"></td>';
					 echo '<td><span class="Text_Normal">'.$objekt->Bezirk.'</span></td>';
					 echo '<td><span class="Text_Normal">'.$objekt->Landkreis.'</span></td>';
					 echo '</tr>';
				}
				echo '</table>';
			}
			else
			{
				echo mysql_error($db);
			}

In der ersten Spalte von jeden Datensatz ist eine Checkbox, die der Benutzer dann ankreuzen kann. Soweit ist es eigentlich einfach :D aber jetzt kommt des was mir Probleme bereitet.

Wenn er das Formular abgesendet hat möchte ich alle angekreutzten Datensätze in eine andere Tabelle speichern.

Probleme:

1. Wie erstelle ich die Checkbox richtig (value, name usw.....) so dass ich dann später beim speichern in die andere Tabelle möglichst einfach habe.

2. Wie kann ich auf die Checkboxen zugreifen, weil ich weiss ja nicht wieviel Datensätze vor den senden vorhanden waren.

3. Wer sonstige Tips für mich hat ich würde mich sehr darüber freuen.

Kann mir da jemand weiterhelfen ?

Ps. ich möchte SESSION Variablen möglichst vermeiden.

mfg lomo
 
Wenn du die Checkboxen als Array abschickst mit:

<input ... name="check[]" value="value" />

Dann kanst du mit sizeof($_POST['check']) die Anzahl der Element zurückliefern lassen
 
Folgendes wäre möglich:
PHP:
<?php

	$db = datenbank_verbinden('xxx', 'xxx', 'xxx');
	$query = "
		SELECT
		        `Landkreis`,
		        `Bezirk`
		  FROM
		        `Parameter_Landkreise`
		  ORDER BY
		        `Bundesland`,
		        `Bezirk`,
		        `Landkreis` ASC
		";
	if( $result = mysql_query($db, $query) ) {
		echo '<table width="100%">';
		while( $objekt = mysql_fetch_object($resut) ) {
			echo sprintf(
				'<tr><td><input type="checkbox" name="dummy[]" value="%s"></td><td class="Text_Normal">%s</td><td class="Text_Normal">%s</td></tr>',
					$i++,
					$objekt->Landkreis,
					$objekt->Bezirk,
					$objekt->Landkreis
			);
		}
		echo '</table>';
	}

?>
Später sind die ausgewählten Elemente im Array dummy zu finden.
 
Erstmal Vielen Dank für eure bisherigen Tips. Die helfen mir schonmal weiter.

Jetzt hab ich aber noch ein großes Problem und zwar müst ich irgendwie das array dummy[] (Beispiel oben) irgendwie übergeben oder global speichern weil die Seite lädt sich durch das versenden ja neu und alle Variablen sind weg.

mfg lomo
 
Zurück