• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Update tabeli w pętli mysqli

Object Storage Arubacloud
0 głosów
391 wizyt
pytanie zadane 9 lipca 2015 w PHP przez mowmiheniek Stary wyjadacz (11,900 p.)
zamknięte 9 lipca 2015 przez mowmiheniek

Cześć,

Prosta rzecz, a utknąłem. Na podstawie pytania do bazy dostaję zbiór liczb.

Gdy wyświetlam $new_no_order, ma liczby np. 4,5,6,7,8,9. Teraz chce do każdej dodać 1.

Niestety dodaje tylko do ostatniej :(

 

while($list_biggest = $biggest_order->fetch_array()){
                                     $new_no_order = $list_biggest['in_order'];
                                     
                               $add_one = "UPDATE `ware` SET `in_order`=(`in_order`+1) WHERE `in_order`= '$new_no_order'");
                                }

 

komentarz zamknięcia: OT

3 odpowiedzi

0 głosów
odpowiedź 9 lipca 2015 przez mowmiheniek Stary wyjadacz (11,900 p.)
 
Najlepsza
Dlaczego tak jest, że po napisaniu pytania dostaje olśnienia? :)

Problemem jest tutaj unikalność numerów in_order - dlatego nie można aktualizować numeru np. 6 na 7 bo 7 już istnieje.

I dlatego aktualizuje mi się ostatni numer.

Dzięki comandeer za zainteresowanie.
+1 głos
odpowiedź 9 lipca 2015 przez makoso Mądrala (7,380 p.)
while($list_biggest = $biggest_order->fetch_array()){
                                     $new_no_order = $list_biggest['in_order'];
                                      
                               $add_one = "UPDATE `ware` SET `in_order`=(`in_order`+1) WHERE `in_order`= '$new_no_order'")
;
$polaczenie_zbaza_twoje->quey($add_one);
                                }

 

chyba korzystasz z mysqli a już zdążyłem zapomnić jak tam jest :) ganiali mnie to i ja napiszę PDO lepsze :) przykład tego co chcesz w pdo:

 

polaczenie.php

 

$host     ="localhost";
$user     ="root";
$db        ="baza";
$pass     ="";
try
{
    $polacz  = NEW PDO("mysql:host=" . $host . ";dbname=" . $db, $user, $pass);
}
catch (PDOException $e)
{
    Echo 'Wystąpił problem z połczeniem proszę spróbój później';
    exit();
}

skrypt.php

include ('polaczenie.php');

while($list_biggest = $biggest_order->fetch(PDO::FETCH_OBJ))
{
	$new_no_order = $list_biggest->in_order;                                      
	$new_order = $list_biggest->in_order + 1;                                      
	$add_one = "UPDATE `ware` SET `in_order`= ? WHERE `in_order`= ?");
	$aktualizuj 	= $polacz->prepare($add_one);
	$aktualizuj->bindParam(1, $new_order, PDO::PARAM_INT);
	$aktualizuj->bindParam(2, $new_no_order, PDO::PARAM_INT);
	$aktualizuj->execute();
}

 

może nie zrobiłem błedu :)

0 głosów
odpowiedź 9 lipca 2015 przez Comandeer Guru (602,340 p.)
A gdzie to zapytanie jest wywoływane?

Podobne pytania

+1 głos
1 odpowiedź 176 wizyt
+1 głos
1 odpowiedź 457 wizyt
0 głosów
0 odpowiedzi 303 wizyt
pytanie zadane 9 maja 2022 w PHP przez gatka84 Bywalec (2,150 p.)

92,632 zapytań

141,502 odpowiedzi

319,881 komentarzy

62,014 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...