Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> mysql_insert_id() nie zwraca wartości
jackal777
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.12.2011

Ostrzeżenie: (0%)
-----


Mam taką fukcję, którą wywołuje w indeksie:
  1. $idNK=DaneDoWysylki($imie,$nazwisko,$adres,$tel,$email);
  2. function DaneDoWysylki($imie,$nazwisko,$adres,$tel,$email) {
  3. $dbConnected = dbConnect();
  4. $question = "INSERT INTO klient VALUES ('','$imie','$nazwisko','$adres','$tel','$email')";
  5. $result = $dbConnected->query($question);
  6. if($dbConnected->affected_rows>0) {return $id;} else {return false;}
  7. $dbConnected->close();
  8. }

W bazie są kolumny: id (auto inc), imie, naziwsko, adres, tel, email.
Funkcja poproawnie dodane dane do BD, id sie incrementuje, ale mysql_insert_id() zawsze zwraca mi int(0).
Dlaczego questionmark.gif

Ten post edytował jackal777 10.02.2012, 19:13:55
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
potreb
post
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


A primary auto_increment masz nałożony na kolumnę ID. Pokaż strukturę tabeli z phpmyadmina. I jaką wersję mysql-a posiadasz?

The value of mysql_insert_id() is affected only by statements issued within the current client connection. It is not affected by statements issued by other clients

Ten post edytował potreb 10.02.2012, 19:31:21


--------------------

Go to the top of the page
+Quote Post
jackal777
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.12.2011

Ostrzeżenie: (0%)
-----


phpMyAdmin 3.4.5

Go to the top of the page
+Quote Post
Evinek
post
Post #4





Grupa: Zarejestrowani
Postów: 280
Pomógł: 46
Dołączył: 23.03.2010

Ostrzeżenie: (0%)
-----


Ja jakoś nie widzę aby zmienna $id pobierała ID z bazy.

Może trzeba dać:

?

@EDIT: przeczytałem drugi raz ten twój post i zauważyłem, że mój post nic nie daje. Przepraszam. Jeszcze pomyślę i może coś pomogę.

@EDIT2:

Spróbuj jeszcze tak:
  1. "INSERT INTO klient (imie, nazwisko, adres, telkom, email) VALUES ('$imie','$nazwisko','$adres','$tel','$email')"


Ten post edytował Evinek 11.02.2012, 12:00:23
Go to the top of the page
+Quote Post
jackal777
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.12.2011

Ostrzeżenie: (0%)
-----


Pisałem tak:

Cytat(Evinek @ 11.02.2012, 11:49:32 ) *


ale to nic nie dało, zwracało int(0) zawsze.
Teraz po prostu wyrzucam var_dump(mysql_insert_id()) i tysprawdzam czy działa, wszystko robie jak w manualu php, po prostu ta funkcja tak jakby u mnie nie działała. Instalowałem całego nowego XAMPPa z tydzien temu (najnowsza wersja).





"INSERT INTO klient (imie, nazwisko, adres, telkom, email) VALUES ('$imie','$nazwisko','$adres','$tel','$email')"


Już sprawdzam. -> nie działa.



Poczytałem sobie w manualu i pokombinowałem na pare sposobów ale nic nie działa z funckją mysql_insert_id()
zrobiłem tak
  1. echo $id=$dbConnected->insert_id;
i to już z kolei działa, dla mnie czarna magia ale jeśli ktoś bedzie miał problemy z tym na przyszłość to polecam to drugie rozwiązanie, btw dzięki za pomoc.

Ten post edytował jackal777 11.02.2012, 12:30:32
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 17:12