 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
vlivius1
Data înscrierii: 12/Aug/2007
Mesaje: 231
Locație: Bucuresti
|
| Trimis: Joi Mai 15, 2008 8:16 pm Titlul subiectului: UPDATE MYSQL |
|
|
Am 2 array-uri dimanice:
1) $id_update_cart = $_SESSION['array_for_update']; //id-urile corespunzatoare cumparatorului
2) $cant_coresp_id = $_POST['cantitate']; // cantitatea corespunzatoare id-urilor cumpatorului
print_r($id_update_cart);
echo '<br>';
print_r($cant_coresp_id);
echo '<br>';
$cer = 'UPDATE `cart` SET cantitate='.$cant_coresp_id.' WHERE id = \'' . join('\' OR id = \'', $id_update_cart) . '\'';
mysql_query($cer);
echo $cer;
echo mysql_error();
Am incercat sa fac asa dar imi da eroarea Unknown column 'Array' in 'field list'
Cum pot face update-ul? |
|
| Sus |
|
dechim
Data înscrierii: 10/Mai/2005
Mesaje: 656
Locație: Drobeta Turnu Severin
|
| Trimis: Vin Mai 16, 2008 10:25 am Titlul subiectului: |
|
|
Probabil :
$cant_coresp_id = $_POST['cantitate']; // cantitatea corespunzatoare id-urilor cumpatorului
este un array si-l folosesti gresit in constructia comenzii UPDATE
Daca ai in forma:
<input type="text" name="cantitate[]" .../>
atunci aia e cauza.
Poti folosi un "foreach" daca cele doua array-iuri au chei identice (id-uri, cantitate) |
|
| Sus |
|
vlivius1
Data înscrierii: 12/Aug/2007
Mesaje: 231
Locație: Bucuresti
|
| Trimis: Vin Mai 16, 2008 4:28 pm Titlul subiectului: |
|
|
Am facut cu 'foreach' dar imi ia numai ultima valoare din variabila si face update cu ea la toate id-urile din array-ul cu id-uri.
Eu cred ca nici sintaxa de update nu este buna, pentru ce vreau eu sa fac, sigur este altfel dar nu stiu cum.
Stie cineva cum ar trebui sa arate sintaxa?
array1_id = (1,2,3,4);
array2_cantitate = (10,20,30,40);
Update-ul trebui sa-l faca asa:
cantitate 10 cu id 1
cantitate 20 cu id 2
cantitate 30 cu id 3
cantitate 40 cu id 4 |
|
| Sus |
|
Maniero
Data înscrierii: 14/Mai/2008
Mesaje: 8
|
| Trimis: Lun Mai 19, 2008 10:18 am Titlul subiectului: |
|
|
Vei avea nevoie de cate o comanda UPDATE pentru fiecare inregistrare pe care vrei s-o modifici; altfel spus, pentru fiecare pereche id-cantitate.
Ai nevoie deci de ceva de genul:
// parcurgi array-ul cu id-uri
foreach ($array_id as $id) {
//gaseste valoarea corespondenta incantitati
$value = next($array_cantitate);
mysql_query("UPDATE `cant` SET cant = $value WHERE id = $id");
} |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|