La mia situazione è questa : io ho un form cresto con diversi array che mi si riempiono da un database. poi a seconda che cecchi uno o piu' di queste linee ( array nel database ) quest'ultime dovrebbero essere inviate ad una nuova pagina che mi manda quelle selezionate alla modifica. Il problema è che diversi valori si perdono per la strada e io non so il perchè.
Ecco il codice del form:
Codice PHP:
print "<form name='form10' action='login.php?com=emld' method='POST'>";
print "<div align='left'><span class='style1'><table>";
print"<tr><td>Check</td><td>Domanda</td><td>Risposta</td><td>Data</td><td>Link</td><td>Importanza</td></tr>";
----- ( Vari controlli ) ______
$succ = $row[successo];
switch ($succ) { //6
case 0:
$nome_immagine = "immagini/succ0.JPG";
print "<input type='hidden' name='succ[" . $row[id] . "]' value='0'>";
break;
case 1:
$nome_immagine = "immagini/succ1.JPG";
print "<input type='hidden' name='succ[" . $row[id] . "]' value='1'>";
break;
case 2:
$nome_immagine = "immagini/succ2.JPG";
print "<input type='hidden' name='succ[" . $row[id] . "]' value='2'>";
break;
case 3:
$nome_immagine = "immagini/succ3.JPG";
print "<input type='hidden' name='succ[" . $row[id] . "]' value='3'>";
break;
case 4:
$nome_immagine = "immagini/succ4.JPG";
print "<input type='hidden' name='succ[" . $row[id] . "]' value='4'>";
break;
case 5:
$nome_immagine = "immagini/succ5.JPG";
print "<input type='hidden' name='succ[" . $row[id] . "]' value='5'>";
break;
} //6
// per esegui modifica la lista comandi bisogna presentare i dati
print "<input type='checkbox' name='id[" . $row[id] . "]' value='" . $row[id] ."'></td><td>";
print "<input type='text' name ='domanda[" . $row[id] . "]' value ='" . $row[domanda] . "'></td><td>";
print "<input type='text' name ='risposta[" . $row[id] . "]' value ='" . $row[risposta] . "'></td><td>";
print "<input type='text' name ='data[" . $row[id] . "]' value ='" . $row[data] . "'></td><td>";
if (($row[_link] == "") or (is_null($row[_link]) == true)) {
print "<input type='text' name ='_link_[" . $row[id] . "]' value ='X'></td><td>";
} else {
print "<input type='text' name ='_link_[" . $row[id] . "]' value ='" . $row[_link] . "'></td><td>";
}
print "<img src='" . $nome_immagine ."' name = 'immagine[" . $row[id] . "]' value ='" . $nome_immagine . "' width='44' height='24' /></td><td>";
print "<input type='text' name ='rilevanza[" . $row[id] . "]' value ='" . $row[successo] . "'></td><td>";
}
print "</td></tr>";
} // 4
print "<tr><td> </td><td><input type='submit' name='Submit' value='Invio' /></td></tr>";
print "</table>";
conclusione();
exit;
}
ED ecco il codice che riceve i dati solitamente solo le linee checchate:
Codice PHP:
$myCheck = $_POST['id'];
$MC2 = $_POST['domanda'];
$MC3 = $_POST['risposta'];
$MC4 = $_POST['data'];
$MC5 = $_POST['_link_'];
$MC6 = $_POST['rilevanza']; // successo
//$MC7 = $_POST['rilevanza_']; // successo precedente
//$MC8 = $_POST['immagine'];
$MC9 = $_POST['succ'];
/*if ( (count($ind) == count($dom)) and (count($risp) == count($data)) and (count($data) == count($ril))) {
//TUTTO OK
} else {
print "<table><tr><td><img src='icone/domande.jpg' width='60' height='60' /></td></tr><tr><td><p class='style2'>Array non con lo stresso numero di elementi. (40)</p></td><td><img src='icone/allert.jpg' width='60' height='60' /></td></tr></table>";
conclusione;
exit;
} */
$numero = 0;
foreach ($myCheck as $key => $value) {
//print $key . " " . $value;
$ind[$numero] = $value;
$ind2[$numero] = $value; //numero;
$numero = $numero + 1;
$selezionato = true;
}
if ( $selezionato <> true) {
print "<table><tr><td><img src='icone/domande.jpg' width='60' height='60' /></td></tr><tr><td><p class='style2'>Nessun Elemento Selezionato.</p></td><td><img src='icone/allert.jpg' width='60' height='60' /></td></tr></table>";
conclusione;
exit;
}
$numero = 0;
foreach ($MC9 as $key1 => $value1) {
//valori precedenti del successo
$succ[$numero] = $value;
$numero = $numero + 1;
}
$numero = 0;
foreach ($MC2 as $key => $value) {
$dom[$numero] = $value;
$numero = $numero + 1;
}
$numero = 0;
foreach ($MC3 as $key => $value) {
$risp[$numero] = $value;
$numero = $numero + 1;
}
$numero = 0;
foreach ($MC4 as $key => $value) {
$data[$numero] = $value;
$numero = $numero + 1;
}
$numero = 0;
foreach ($MC5 as $key => $value) {
//print " > " . $value . " < ";
$link_[$numero] = $value;
$numero = $numero + 1;
}
$numero = 0;
foreach ($MC6 as $key => $value) {
//print "1" . $value . "<br>";
$rilev[$numero] = $value;
$numero = $numero + 1;
}
/*$V = $rilev[0];
//print ">". $V;
if ((count($rivev) < 1) or (trim($V) == "")) {
$numero = 0;
foreach ($MC7 as $key => $value) {
print "2>" . $value . "<br>";
$rilev[$numero] = $value;
$numero = $numero + 1;
}
} */
for ($i = 0; $i <= count($ind2); $i++) {
//modifica_record($ind2[$i],$dom[$ind2[$i]],$risp[$ind2[$i]],$data[$ind2[$i]],$link_[$ind2[$i]],$rilev[$ind2[$i]]);
//print $ind2[$i];
print $ind[$ind2[$i]] . $dom[$ind2[$i]] . $risp[$ind2[$i]] . $data[$ind2[$i]] . $link_[$ind2[$i]] . $rilev[$ind2[$i]];
}
conclusione();
exit;
Qualcuno Può aiutarmi?