AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [MySQL] Query funktioniert nur lokal richtig, warum?
Thema durchsuchen
Ansicht
Themen-Optionen

[MySQL] Query funktioniert nur lokal richtig, warum?

Ein Thema von Mazel · begonnen am 26. Apr 2008 · letzter Beitrag vom 26. Apr 2008
Antwort Antwort
Benutzerbild von Mazel
Mazel

Registriert seit: 11. Nov 2005
Ort: Leipzig
831 Beiträge
 
#1

[MySQL] Query funktioniert nur lokal richtig, warum?

  Alt 26. Apr 2008, 08:53
Hallo und guten Morgen,

ich habe ein merkwürdiges Problem und bin sicher, dass dies an Einstellungen liegt die auf meinem Apache anders sind als auf dem Space meines Hosters, nur weis ich nicht welche es sind. Es geht um folgendes:
SQL-Code:
mysql_query("INSERT INTO counters_net (counter, value) values('".$ip."',".time().")");
mysql_query("UPDATE statistics_net set value = value + 1 WHERE id = 12");
mysql_query("UPDATE statistics_net set value = value + 1 WHERE id = 13");
Diese Zeilen dienen mit dazu, einen einfachen Counter mit IP-Sperre zu realisieren. Dies funktioniert lokal wunderbar, doch im Web sieht es so aus, dass der erste Query nicht ausgeführt wird und bei den anderen beiden, bei denenen lediglich der Wert um 1 erhöht werden soll, ist es so, dass zu den alten Wert nicht 1 addiert wird, sondern nach dieser Formel, wie ich mitbekommen habe:
Code:
OLDVALUE = OLDVALUE + NEWVALUE * 3
Der zu erhöhende Wert wird mit 3 multipliziert und dann zum alten Wert hinzuaddiert, weshalb man annehmen könnte, dass der Code 3 mal durchlaufen wird, er wird aber nur einmal pro Seitenaufruf ausgeführt (Erinnerung: lokal funktioniert es), weshalb ich mit diesen Sprung nicht erklären kann.

Hat jemand einen Rat für mich? Sehe ich den Wald vor lauten Bäumen nicht? Oder ist es doch eine Einstellungssache?

Auf meiner Website ist es unten links zu sehen (Statistik): mj-software.net. Nach einem erneuten Aufruf sind es 3 mehr.

Gruß
Mazel
Marcel Jänicke
www.mj-software.net
  Mit Zitat antworten Zitat
Benutzerbild von ghost007
ghost007

Registriert seit: 31. Okt 2005
Ort: München
1.024 Beiträge
 
Delphi 7 Personal
 
#2

Re: [MySQL] Query funktioniert nur lokal richtig, warum?

  Alt 26. Apr 2008, 09:43
Hi,
mir würde auf anhieb auch nix auffallen, an deinem query. Probier mal folgendes:
SQL-Code:
$date = time();
mysql_query("INSERT INTO `counters_net` (counter, value) values ('$ip','$date')");
mysql_query("UPDATE `statistics_net` SET value=value+1 WHERE id='12'");
mysql_query("UPDATE `statistics_net` SET value=value+1 WHERE id='13'");
Nach diesem schema hab ich meine querys immer gegliedert.

MfG - Ghost007

P.S.: Du rufst das ganze ja mit einem php script auf,oder?
Christian
Es gibt möglich Dinge und unmöglich Dinge.
Für unmögliche braucht man lediglich etwas länger.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#3

Re: [MySQL] Query funktioniert nur lokal richtig, warum?

  Alt 26. Apr 2008, 10:31
Das kann man noch ein klein wenig kürzen (obwohl ich auch keine Fehlerursache erkennen kann):
SQL-Code:
$date = time();
mysql_query("INSERT INTO `counters_net` (counter, value) values ('$ip','$date')");
mysql_query("UPDATE `statistics_net` SET value=value+1 WHERE id IN (12,13)");
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Mazel
Mazel

Registriert seit: 11. Nov 2005
Ort: Leipzig
831 Beiträge
 
#4

Re: [MySQL] Query funktioniert nur lokal richtig, warum?

  Alt 26. Apr 2008, 12:15
Problem gelöst.
Es lag nicht an diesem Code. Die counters_net Tabelle hat noch eine weitere Spalte id, die lokal auf auto_increment gestellt ist, dummerweise noch nicht in der Tabelle fürs Web.
Dennoch ist für mich unklar, warum der eine Wert um 3 Zähler höher ging.

Ich danke auch dennoch, ich wär ohne die Sicherheit, das der Code stimmt, nicht darauf gekommen, in der Tabelle nach Fehlern zu suchen.

Gruß
Mazel
Marcel Jänicke
www.mj-software.net
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:04 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