problema con mysql update in ciclo for (array in where)

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
dk-wamp
Prode Principiante
Messaggi: 37
Iscrizione: sabato 10 gennaio 2009, 17:05

problema con mysql update in ciclo for (array in where)

Messaggio da dk-wamp »

Salve, ho un problema che mi sta facendo vedere triplo,

ho questo codice:

Codice: Seleziona tutto

Codice PHP:
<?php
//remove letters from urls
function deleteFirstChar( $string ) {
    return substr( $string, 14 );}

#prendi da post
$hit = htmlspecialchars($_POST['links']);
$folderId = htmlspecialchars($_POST['foldercode']);

#splitta le urls
$pieces = explode("\n", $hit);

$nRow = count($pieces);
echo '<center><table class="button"><td>';
echo "<center>Links: ".$nRow."</center><br>";

 echo $folderId."<br>";
 
#cicla ogni linea
for ($linee=0; $linee<$nRow; $linee++)
{

 
$codekk= deleteFirstChar( $pieces[$linee] );
echo $codePhp."<br>";
 
    
// set folderId to files
$change = mysqli_query($con,"Update links SET folder='$folderId' Where php='$codekk'");
} 
?>
allora il funzionamento è questo:

ricevo tot righe di urls attraverso post, uso la funzione explode,successivamente taglio l'url http://dominio/ e mi resta un codice che è presente anche nel database come record nel campo 'php'.
se faccio un echo della variabile $codekk che si riallaccia all'array ( $codekk= deleteFirstChar( $pieces[$linee] ); ) mi visualizza tutti i campi che mi servono.

uso questa variabile ($codekk) come Where in una chiamata mysql di update, in modo da poter modificare tutti i valori di un altro campo di quelle righe.

in pratica è come se in $change = mysqli_query.. $codekk fosse vista come una variabile statica infatti mi viene inserito nel database solo l'ultimo record da aggiornare e gli altri vengono saltati nonostante nel ciclo for gli echo di $codekk siano perfetti (tutti diversi).

Idee su come procedere? ho provato a mettere una query select ma con $codekk in Where mi vede anch'esso solo l ultimo risultato dell array.
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti