PHP błąd w poleceniu UPDATE


(Kosior6) #1

(Jim1961) #2

w formularzu masz name "data_zwr", a z POSTa odczytujesz "data_zwrotu"


(Kosior6) #3

Fakt, teraz już dobrze, tylko pojawia się kolejny problem. Teraz wyświetla, że nie dodano zwrotu ;/


(Jim1961) #4
$q=mysqli_query($dbc,$zapytanie);

zamień na

$q=mysqli_query($dbc,$zapytanie) or die(mysqli_error($dbc));

będą ci się błędy wyświetlać, potem zakończeniu testów można to pousuwać


(Kosior6) #5

Niestety, po wpisaniu tego polecenia od błędów nic się nie wyświetla, jednak po wpisaniu var_dump($q) pokazuje mi się tylko bool(true)


(Jim1961) #6

To sprawdzaj to tak:

if (mysqli_affected_rows($dbc)!=-1) echo "

Dodano date zwrotu

"; else echo "

Nie dodano zwrotu

";[/code]

http://php.net/manual/en/mysqli.affected-rows.php <- manual mówi, że funkcja zwraca wartość w liczbach całkowitych, dlaczego ty tam masz bool(true) to nie wiem


(Kosior6) #7

No po wpisaniu tego wyskakuje, że dodano, ale fizycznie do bazy nie dodaje


(Jim1961) #8

Rozwiń "nie dodaje" - pole jest puste, ma same zera. Jeżeli niema error'a i zwraca 1 (true) to musi coś robić


(Kosior6) #9

ma same zera w formie 0000-00-00. Ale tak samo było przed dodaniem


(Jim1961) #10

zamień

$data=$_POST['data_zwrotu'];

na

$data="2011-01-01";

jeżeli nie pojawi się ta data w bazie to eksportuj strukturę tabeli 'wypozyczenia' i najlepiej podaj ostatnią wersję skryptu


(Kosior6) #11

(Jim1961) #12

Jeżeli to nie działa to wymiękam

$wyp=11;//$_POST['wypozyczenia'];

$data="2011-01-01";//$_POST['data_zwr'];

$zapytanie="UPDATE `wypozyczenia` SET data_zwrotu='$data' WHERE id_wypozyczenia='$wyp' LIMIT 1;";

$q=mysqli_query($dbc,$zapytanie) or die("błąd:".mysqli_error($dbc));

najlepiej skopiuj jak leci


(Kosior6) #13

No po wklejeniu tego dodało datę zwrotu.

-- Dodane 06.04.2011 (Śr) 9:54 --

Super. Przerobiłem to co mi w ostatnim poście podesłałeś i działa w końcu jak należy. Wielkie dzięki :slight_smile: