Sto per impazzire, non capisco perché non fa il ciclo, provo a postare lo script in modo pulito:
Vi posto l'intero script :
Codice PHP:
<?php
$db = new MySQL();
?>
<?php
if($_REQUEST['modifica']=='ok'){
// INSERIMENTO , CANCELLAZIONE E MODIFICA
// ID RIPARATORE
$idriparatore=$_REQUEST['idriparatore'];
// CALCOLO IL NUMERO DI CONSEGNE CONTANDOLE
// Execute our query
if (! $db->Query("SELECT numconsegna FROM riparazioni WHERE idriparatore= '{$_POST['idriparatore']}'")) $db->Kill();
// Let's show how many records were returned
$numconsegna = $db->RowCount()+1;
$contatore_selezione=$_POST['contatore_selezione'];
for($i=1; $i<=$contatore_selezione; $i++){
$idriparatore = $_POST['idriparatore'.$i];
$datainvio = date('Y/m/d');
$idriparazione=$_POST['idriparazione'.$i];
$prova=("UPDATE riparazioni SET `idriparatore` = '$idriparatore', `idstato` = '2', datainvio = '$datainvio', numconsegna= '$numconsegna' WHERE idriparazione ='$idriparazione';");
echo $prova;
}
$db->TransactionBegin();
if ($db->Query($sql)) {
$db->TransactionEnd();
// messaggio di inserimento riuscito
echo "Last ID inserted was: " . $db->GetLastInsertID() . "<br /><br />\n";
} else {
$db->TransactionRollback();
// messaggio di inserimento non riuscito
echo "<p>Query Failed</p>\n";
}
header("location:content.php?page=16&messaggio={$_REQUEST['messaggio']}");
}
?>
<script type="text/javascript">
function SelectPost()
{
document.modulo.method = "post";
document.modulo.action = "content.php?page=15";
document.modulo.submit();
}
</script>
<script type="text/javascript">
function incremento_contatore(check){
var contatore=document.form1.contatore_selezione.value;
if ($("#chk-1"+check).is(":not(:checked)")){
contatore--;
document.form1.contatore_selezione.value=contatore;
} else {
contatore++;
document.form1.contatore_selezione.value=contatore;
}
}
</script>
<form action="content.php?page=15" role="form" id="form1" name="form1" method="post" class="validate" novalidate="novalidate" >
<input type="text" name="contatore_selezione" id="contatore_selezione" value="0">
<div class="panel-body">
<div class="row">
<div class="form-group col-md-3 has-success">
<label class="control-label">Riparatore</label>
<select class="form-control" name="idriparatore[]">
<?php
$db->Query("SELECT * FROM riparatori ORDER BY riparatore");
while($row4 = $db->Row()){
echo "<option value='{$row4->idriparatore}'>{$row4->riparatore}</option>";
}
?>
</select>
</div>
<div class="form-group col-md-4 has-success">
<label class="control-label"> </label><br>
<input type="submit" value="Consegna i prodotti al riparatore selezionato" class="btn btn-info">
</div>
</div>
</div>
<div class="clear"></div>
<br>
<table class="table table-bordered table-striped datatable" id="table-2">
<thead>
<tr>
<th>
<div class="checkbox checkbox-replace">
<input type="checkbox" id="chk-1">
</div>
</th>
<th>N. scheda</th>
<th>Data ingresso</th>
<th>Cliente</th>
<th>Prodotto</th>
<th>Tipo di assistenza</th>
</tr>
</thead>
<tbody>
<?php
$db->Query("SELECT riparazioni. * , statiriparazioni. * , tipiassistenze. * , anagrafiche. * , articoli. * , marche. * , riparatori. * , negozi . *
FROM marche
RIGHT OUTER JOIN articoli ON marche.idmarca = articoli.idmarca
RIGHT OUTER JOIN riparazioni
INNER JOIN anagrafiche ON riparazioni.idanagrafica = anagrafiche.idanagrafica
INNER JOIN statiriparazioni ON riparazioni.idstato = statiriparazioni.idstato
INNER JOIN tipiassistenze ON riparazioni.idtipoassistenza = tipiassistenze.idtipoassistenza
INNER JOIN negozi ON riparazioni.idnegozio = negozi.idnegozio ON articoli.idarticolo = riparazioni.idarticolo
LEFT OUTER JOIN riparatori ON riparazioni.idriparatore = riparatori.idriparatore
WHERE riparazioni.idnegozio = {$_REQUEST['idnegozio']}
AND riparazioni.idriparatore =''
AND riparazioni.idstato =1
AND riparazioni.eliminato = 0
ORDER BY riparazioni.nscheda DESC");
// Count table rows
$i = 0;
// --- estraggo il record corrispondente alla email della tabella utente -------------------------------------
while($row = $db->Row()){
?>
<tr>
<td>
<div class="checkbox checkbox-replace">
<?php
$appoggio="chk-1".$row->idriparazione;
?>
<input type="checkbox" onClick="javascript:incremento_contatore('<?php echo $appoggio; ?>');"
name="idriparazione<?php echo $i; ?>" value="<?=$row->idriparazione; ?>" id="chk-1<?php echo $row->idriparazione; ?>">
</div>
</td>
<td><?=$row->nscheda?></td>
<td><?=$row->dataingresso?></td>
<td><?=$row->cognome?> <?=$row->nome?></td>
<td><?=$row->marca?> <?=$row->articolo?></td>
<td><?=$row->tipoassistenza?></td>
</tr>
<?php
$i++;
}
?>
</tbody>
</table>
<br><br>
<input type="hidden" value="<?=$_REQUEST['idnegozio']?>" name="idnegozio[<?=$i?>]">
<input type="hidden" value="inserimento" name="messaggio">
<input type="hidden" value="ok" name="modifica">
</form>
vI Mostro lo stamp a video
Codice PHP:
UPDATE riparazioni SET `idriparatore` = '', `idstato` = '2', datainvio = '2014/07/20', numconsegna= '3' WHERE idriparazione ='3';UPDATE riparazioni SET `idriparatore` = '', `idstato` = '2', datainvio = '2014/07/20', numconsegna= '3' WHERE idriparazione ='';[COLOR=#949494][FONT=Noto Sans]Query Failed[/FONT][/COLOR]
il primo idriparazione lo prende, ma il secondo no, e mi dice query failed, perchè?