php - Updating rows in mysql with a foreach loop -


just started learning php , first project: sort list items , save new order database. i'm stuck on how save order new order numbers.

i have array this: order numbers

and want loop through , update ordernumber column in table.

so far have set up:

foreach ($a $key => $neworder) {     $sql = "update todoitem set ordernumber = '$key' id = '$neworder'"; } 

but when sort list items, this: todoitem table

only last row gets updated , order number 3? don't understand 3 come from.

i've been scratching head @ few days , i'm stuck...

this:

foreach ($a $key => $neworder) { 

is looping 0-3 (since there 4 keys in array numbers).

this:

$sql = "update todoitem set ordernumber = '$key' id = '$neworder'"; 

is setting $sql variable string, built $key , $neworder values.

now, code never query inside loop. over-writes each time. last iteration of loop value of $sql after loop. (presumably that's you're using in way.)

if assumption correct , executing query after loop, code semantically doing following:

  • set query use 0.
  • set query use 1.
  • set query use 2.
  • set query use 3.
  • execute query.

it's executed once. maybe meant execute query inside of loop?


Comments

Popular posts from this blog

java - pagination of xlsx file to XSSFworkbook using apache POI -

Unlimited choices in BASH case statement -

apache - How do I stop my index.php being run twice for every user -