Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dodanie rekordu do dwoch tabel
PimP517
post 21.07.2010, 20:50:40
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.07.2010

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


Witam mam taki skrypcik ktory dodaje rekord do amx_amxadmins i dziala ale nie moge zrobic aby skrypt dodawal takie samo "id" do drogiej tabeli
  1. <?
  2. $id=$_POST['id'];
  3. $username=$_POST['username'];
  4. $password=$_POST['password'];
  5. $access=$_POST['access'];
  6. $flags=$_POST['flags'];
  7. $nickname=$_POST['nickname'];
  8. $steamid=$_POST['steamid'];
  9. $ashow=$_POST['ashow'];
  10. $created=$_POST['created'];
  11. $expired=$_POST['expired'];
  12. $days=$_POST['days'];
  13.  
  14.  
  15. $query = "INSERT INTO `amx_amxadmins` (id, username, password, access, flags, nickname, steamid, ashow, created, expired, days) VALUES ( '$id','$username','$password','z','a','$nickname','$steamid','0','0','0','0')";
  16. $result = @mysql_query($query);
  17. $query = "INSERT INTO `amx_serwer_admins` (id, server_id, acces, stat) VALUES ( '$id','4','a','no')";
  18. $result = @mysql_query($query);
  19.  
  20. if ($result){ //jezeli nie wyst?pi?y ?adne bl?dy
  21. $message .= 'Twoje dane zosta?y dodane do bazy';
  22. }else{
  23. $message .= 'Wyst?pi? b??d. Przepraszamy za utrudnienia<br />';
  24. }
  25. if(isset($message)){
  26. echo $message;
  27. }
  28. ?>
Powód edycji: [thek]: nie ten tag bbcode!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
thek
post 21.07.2010, 20:56:28
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




A chociaż gdziekolwiek pobierasz sobie jakie id dostał tenże nowy rekord w pierwszej tabeli? Bo ja nie widzę...


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
PimP517
post 21.07.2010, 21:29:46
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.07.2010

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


Podpowiesz mi jak to zrobic bo ja zielony w tym temacie jestem sad.gif,



doczytalem ze przez mysql_insert_id(). Ale kompletnie nie wiem jak tego uzyc.

Mecze sie z tym 3 godzini juz albo i wiecej, sad.gif, macie jakis kurs maly o tym?

Ten post edytował PimP517 21.07.2010, 23:52:09
Go to the top of the page
+Quote Post
ces
post 22.07.2010, 08:37:53
Post #4





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 21.07.2010

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


ale poco masz pobierac id z poprzedniego insertu skoro id insertujesz takie samo ze zmiennej $id, tak ? o to id Ci chodzi czy o cos innego, bo jezeli o to to musi byc takie same.

ps. po co robisz kropke po $message skoro wczesniej jej nigdzie nie ma ?
Go to the top of the page
+Quote Post
PimP517
post 22.07.2010, 08:51:25
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.07.2010

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


Ale do bazy "amx_serwer_admins" dodaje mi ID=0 za kazdym razem.


Zroblilem cos takiego

  1. $LastID = mysql_result(mysql_query('SELECT LAST_INSERT_ID(id) FROM amx_amxadmins;'));
  2.  
  3.  
  4. $querya =
  5. "INSERT INTO `amx_admins_servers` (admin_id, server_id, custom_flags, use_static_bantime) VALUES ( '$LastID','4','a','no')";
  6. $result = @mysql_query($querya);



Teraz mi dodaje ID=1

Ten post edytował PimP517 22.07.2010, 08:52:35
Go to the top of the page
+Quote Post
gambler
post 19.10.2010, 12:23:01
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 31.08.2005

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


Widocznie w strukturze bazy danych pole z tabeli amx_amxadmins nie ma zaznaczonego Autoincrement

i wtedy nie podajesz w zapytaniu tego $LastID

Cytat
$querya =
"INSERT INTO `amx_admins_servers` (admin_id, server_id, custom_flags, use_static_bantime) VALUES ( '$LastID','4','a','no')";


tylko

Kod
$querya =
"INSERT INTO `amx_admins_servers` (admin_id, server_id, custom_flags, use_static_bantime) VALUES ( '','4','a','no')";

a dopiero później jeżeli chcesz dodać to ostatnie id do jakiejś innej tabeli używasz
Kod
$id = mysqli_insert_id($con);

gdzie $id to bedzie własnie to lastid;
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 Wersja Lo-Fi Aktualny czas: 27.06.2025 - 11:11