IF NOT EXIST abfrage mit MySQL
Hallo :D Wenn ihr euch fragt warum ich immer euch frage, der Grund ist: Ihr seit die beste Hilfe.
Da ich nun ein Bot mache, muss ich ja auch auswählen können welchen Spieler er spielt! Doch falls der Spielername nicht existiert, soll der Spieler erstellt werden. Für das brauche ich IF NOT EXISTS Doch mein Proble ist, es wird nicht ausgeführt. Liegt es am SQL code? Ach ja das ganze wird in PHP ausgeführt.
Code:
mysql_query("INSERT INTO IF NOT EXISTS ´username´ = $botname `users` (`id`,
`username`, `password`, `banned`, `villages`, `points`, `ennobled_by`, `ally`, `ally_titel`, `ally_found`, `ally_lead`, `ally_invite`, `ally_diplomacy`, `ally_mass_mail`, `rang`, `villages_mode`, `attacks`, `new_report`, `new_mail`, `market_sell`, `market_buy`, `market_ratio_max`, `killed_units_att`, `killed_units_att_rank`, `killed_units_def`, `killed_units_def_rank`, `killed_units_altogether`, `killed_units_altogether_rank`, `do_action`, `last_activity`, `birthday`, `vacation_id`, `vacation_name`, `vacation_accept`, `b_day`, `b_month`, `b_year`, `sex`, `home`, `image`, `personal_text`, `window_width`, `show_toolbar`, `dyn_menu`, `confirm_queue`, `map_size`, `memo`, `map_reload`, `graphical_overwiev`, `overview`, `stufen`, `winter`) VALUES (NULL, '$botname', 'e10adc3949ba59abbe56e057f20f883e', 'N', '', '', '', '-1', '', '0', '0', '0', '0', '0', '', 'prod', '0', '0', '0', 'all', 'all', '3', '', '', '', '', '', '', '', '', '', '-1', '', '0', '', '', '', 'x', '', '', '', '840', '1', '1', '1', '9', '', '', '1', 'new', 'yes', '');'1', '1', '1', '9', '', '', '1', 'new', 'yes', '');"); |
Re: IF NOT EXIST abfrage mit MySQL
Das geht gar nicht wenn schon dann Replace statt INSERT INTO guck mal in der Mysql Doku.
Und selbst dafür braucht mann den Primar KEY denn du anscheinen nicht hast. |
Re: IF NOT EXIST abfrage mit MySQL
Es ist alles in localhost :D Es ist kein online spiel sondern ein lan game :D Aber Was zeigt dann mysql_result wenn es ein Falsches resultat bekommt?
|
Re: IF NOT EXIST abfrage mit MySQL
Zitat:
|
Re: IF NOT EXIST abfrage mit MySQL
Der Fehler ist es wird nicht in phpMyAdmin ausgeführt
|
Re: IF NOT EXIST abfrage mit MySQL
Dann wird Dir phpMyAdmin auch eine Fehlermeldung ausgeben, oder?
[edit] Oder schau mal hier, das scheint Deinem Vorhaben nahe zu kommen: http://dev.mysql.com/doc/refman/5.0/...duplicate.html [/edit] |
Re: IF NOT EXIST abfrage mit MySQL
Zitat:
|
Re: IF NOT EXIST abfrage mit MySQL
Das würde mich wundern, wenn das ginge. Wie heißt denn die Tabelle, das kann ich in Deinem Statement nicht erkennen.
|
Re: IF NOT EXIST abfrage mit MySQL
EDIT: Ich habe es geschaft...
Ich musste nach insert into tabelle "If not exists" nehmen uns nicht vor tabelle |
Re: IF NOT EXIST abfrage mit MySQL
EDIT2: nein geht nicht :(
|
Re: IF NOT EXIST abfrage mit MySQL
Sicher, dass das geht? Ansonsten nochmal hier nachlesen.
|
Re: IF NOT EXIST abfrage mit MySQL
Hmm... Das konnte mir leider auch nicht helfen.
|
Re: IF NOT EXIST abfrage mit MySQL
Dann kann ich Dir leider auch nicht helfen, weil ich anscheinend nicht verstehe, was Du vorhast.
|
Re: IF NOT EXIST abfrage mit MySQL
Ich möchte das dieser code ausgeführt wird:
SQL-Code:
Falls $botname nicht existiert. $Botname ist die variable in der config wo man auswählen muss welchen spieler er steuert
INSERT INTO ´username´ = $botname `users` (`id`,
`username`, `password`, `banned`, `villages`, `points`, `ennobled_by`, `ally`, `ally_titel`, `ally_found`, `ally_lead`, `ally_invite`, `ally_diplomacy`, `ally_mass_mail`, `rang`, `villages_mode`, `attacks`, `new_report`, `new_mail`, `market_sell`, `market_buy`, `market_ratio_max`, `killed_units_att`, `killed_units_att_rank`, `killed_units_def`, `killed_units_def_rank`, `killed_units_altogether`, `killed_units_altogether_rank`, `do_action`, `last_activity`, `birthday`, `vacation_id`, `vacation_name`, `vacation_accept`, `b_day`, `b_month`, `b_year`, `sex`, `home`, `image`, `personal_text`, `window_width`, `show_toolbar`, `dyn_menu`, `confirm_queue`, `map_size`, `memo`, `map_reload`, `graphical_overwiev`, `overview`, `stufen`, `winter`) VALUES (NULL, '$botname', 'e10adc3949ba59abbe56e057f20f883e', 'N', '', '', '', '-1', '', '0', '0', '0', '0', '0', '', 'prod', '0', '0', '0', 'all', 'all', '3', '', '', '', '', '', '', '', '', '', '-1', '', '0', '', '', '', 'x', '', '', '', '840', '1', '1', '1', '9', '', '', '1', 'new', 'yes', '');'1', '1', '1', '9', '', '', '1', 'new', 'yes', ''); |
Re: IF NOT EXIST abfrage mit MySQL
Das Einfachste wäre doch, das in 2 Schritten zu machen. Zuerst nachschauen, ob es den User bereits gibt:
SQL-Code:
Kommt da eine 0 zurück (kein Datensatz vorhanden), dann mit INSERT einfügen
SELECT COUNT(*) AS Anzahl
FROM Tabelle WHERE username = $botname
SQL-Code:
ansonsten Datensatz updaten
INSERT INTO Tabelle(Feldliste) VALUES(Wertliste)
SQL-Code:
UPDATE Tabelle
SET Feld1 = Wert1, Feld2 = Wert2,... WHERE username = $botname |
Re: IF NOT EXIST abfrage mit MySQL
Wie soll ich das denn abfragen ob 0 kommt?
$usernotexists = <<<MEHRZEILEN mysql_query("SELECT COUNT(*) AS Anzahl FROM Tabelle WHERE username = $botname") MEHRZEILEN; if ($usernotexists == 0) { mysql_query("INSERT INTO Tabelle(Feldliste) VALUES(Wertliste)"); } Und noch eine Frage: mysql_query("SELECT COUNT(*) AS Welche anzahl? FROM Tabelle WHERE username = $botname") |
Re: IF NOT EXIST abfrage mit MySQL
Mit der Abfrage bekommst Du eine Datenmenge mit genau einem Datensatz zurück. Dieser Datensatz enthält das Feld "Anzahl", in dem die Anzahl der User mit diesem Namen drinsteht. Und wie man das in PHP abfragt, kannst Du hier nachlesen.
|
Re: IF NOT EXIST abfrage mit MySQL
Könntest du mir eine PN schicken und mir das erklären?
|
Re: IF NOT EXIST abfrage mit MySQL
Kann ich, aber erst ab 16:00 Uhr.
|
Re: IF NOT EXIST abfrage mit MySQL
Ok ich werde da sein :D xD
|
Re: IF NOT EXIST abfrage mit MySQL
Code:
:?:
$result = mysql_query("SELECT COUNT(*) AS Anzahl FROM Tabelle WHERE username = $botname");
$usercount = mysql_result($result, 0, 0); echo $usercount; if ($usercount == 0) { mysql_query("INSERT INTO Tabelle(Feldliste) VALUES(Wertliste)"); } |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz