php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 27-10-2006, 01:28
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard Insert wird zweimal ausgeführt

Hallo Freunde,
nach Tagen Suche, Ausprobieren und Stress wende ich mich an euch bittend um Hilfe. Ich habe ein PHP_Skript programmiert, das eine mysql-Anfrage beinhaltet. Um genauer zu sein, handelt es sich um eine INSERT-Anfrage, ich möchte einfach die Besucher der Webseite zählen. Das blöde ist, dass diese Insert-Anfrage 2-mal ausgeführt wird--> ich bekomme also immer 2 Einträge, wenn einer auf die Webseite kommt. Ich habe das Fragment, wo die INSERT-Anfrage ausgeführt wird, in einer Funktion gemacht, die ich an der Stelle aufrufe, wo ich sie brauche. Und ich bin mir ganz sicher, dass ich sie nur einmal im Dokument aufrufe und ich lasse die Seite auch nicht automatisch aktualisieren. Das wird also nur einmal ausgeführt.
Fast das gleiche Problem habe ich an einer anderen Stelle, ich habe eine Funktion programmiert, mit dessen Hilfe ich emails schicken lasse. Die wird auch 2-mal ausgeführt--> der Empfänger bekommt 2 gleiche Emails.
Ich drehe durch....
Danke im Vorraus!!!
PS: fragt einfach, wenn ihr den Code braucht. Ich kann ihn hochladen.
Mit Zitat antworten
  #2 (permalink)  
Alt 27-10-2006, 08:48
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

Tu das.
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #3 (permalink)  
Alt 27-10-2006, 08:50
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
fragt einfach, wenn ihr den Code braucht. Ich kann ihn hochladen
Also ich brauche den nicht unbedingt für mich, aber wenn du Hilfe erwartest, dann wäre etwas Code sehr schön

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #4 (permalink)  
Alt 27-10-2006, 09:14
closure
 Master
Links : Onlinestatus : closure ist offline
Registriert seit: Mar 2006
Beiträge: 796
closure ist zur Zeit noch ein unbeschriebenes Blatt
Standard Re: Insert wird zweimal ausgeführt

Hi

Zitat:
Original geschrieben von adouzi
Und ich bin mir ganz sicher, dass ich sie nur einmal im Dokument aufrufe und ich lasse die Seite auch nicht automatisch aktualisieren. Das wird also nur einmal ausgeführt.
das ist ja schön dass du dir sicher bist. Aber wenn man sich mal überlegt
wie zwei operationen zustande kommen können bleiben eigentlich nur 3
möglichkeiten.

1) du rufst die funktion doch öfter als 1 mal auf
2) die funktion selbst führt die operation in ihrem körper 2 mal aus.
3) es handelt sich um einen bug den du nicht verursacht hast
(das ist sehr sehr unwahrscheinlich)

Ich tippe auf 1

greets
__________________
(((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")
Mit Zitat antworten
  #5 (permalink)  
Alt 27-10-2006, 13:18
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard Der Quellcode

Die Funktion, um die es sich handelt, ist die setBenutzer()
//////////////////////////////////////////////////////////////////////////////////
Das Fragment in index.php, wo die Funktion aufgerufen wird:
PHP-Code:


// Benutzer in [besucher] eintragen, um die BenutzerAnzahl zu ermitteln
include("./system/funktionen.inc.php");
setBenutzer(); 
/////////////////////////////////////////////////////////////////////////////////
Die Datei system/funktionen.inc.php, wo die Funktion deklariert ist:
PHP-Code:
function setBenutzer(){ 
    @include(
"../var/conn.inc.php");
    @include(
"./var/conn.inc.php");
    
    
$ipgetenv('REMOTE_ADDR');
    
$jetztmktime(date("H"),date("i"),date("s"),date("m"), date("d"), date("Y")); //Jetzt
    
$query"insert into ".$var['besucher']." (ip,datum) values('$ip','$jetzt')";
    
$wmysql_query($query);
// setBenutzer() 

Geändert von adouzi (28-10-2006 um 00:12 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 27-10-2006, 13:22
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: Der Quellcode

Wenn du Quellcode postest, nutze dafür bitte [php]-Tags, und Umbrüche nicht vergessen - steht alles in den Regeln.
Das Syntax-Highlighting erhöht die Verständlichkeit.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #7 (permalink)  
Alt 27-10-2006, 13:24
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von jahlives
Also ich brauche den nicht unbedingt für mich, aber wenn du Hilfe erwartest, dann wäre etwas Code sehr schön

Gruss

tobi
Ich habe den Quellcode hochgeladen. Es ist kein Problem, wenn du ihn verwenden möchtest. Das wenn dir der Stil gefallen hat und wenn wir das Problem beseitigen, sonst wäre ein Einsatz dieses Quellcodes sinnlos
Ich habe ihn am Anfang nicht hochgeladen, wegen Platzgründen, nicht mehr
Danke für deine Antwort
Mit Zitat antworten
  #8 (permalink)  
Alt 28-10-2006, 00:14
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo Freunde, ich brauche euere Hilfe!!!
Mit Zitat antworten
  #9 (permalink)  
Alt 28-10-2006, 14:39
Hirnhamster
 Registrierter Benutzer
Links : Onlinestatus : Hirnhamster ist offline
Registriert seit: Oct 2006
Beiträge: 160
Hirnhamster ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hm wenn ich deinen Code richtig verstehe, müsste er eigentlich bei jedem aufruf der index.php einen besucher 'zählen'.. ich weiß ja nich genau, was du zählen willst, aber normalerweise macht so ein ein counter bzw. das IP speichern nur sinn, wenn du vorher überprüft, ob die IP bereits vorhanden ist.

un was ist $var['besucher'] ?
Mit Zitat antworten
  #10 (permalink)  
Alt 28-10-2006, 16:18
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Hirnhamster
hm wenn ich deinen Code richtig verstehe, müsste er eigentlich bei jedem aufruf der index.php einen besucher 'zählen'.. ich weiß ja nich genau, was du zählen willst, aber normalerweise macht so ein ein counter bzw. das IP speichern nur sinn, wenn du vorher überprüft, ob die IP bereits vorhanden ist.

un was ist $var['besucher'] ?
$var['besucher'] => Sie ist einfach eine Variable, mit deren Hilfe ich den Namen der Tabelle hole. Mit anderen Worten habe ich in der Varibale den Namen der Tabelle gespeichert.
Ich speichere alle IP-Adressen, damit ich 2 Sachen gleichzeitig erreichen kann:
1) Wie viele überhaupt auf die Webseite gekommen sind und
2) aus welchem Land kommen sie
Eigentlich besteht die index.php aus mehr Quellcode. Wenn ich diesen Quellcode-Rest entferne, funktioniert es einwandfrei. Ansonsten werden immer 2 Datensätze gespeichert. Das obwohl der Quellcode-Rest die Funktion nicht enthält und keine Aktualisierung der Webseite verursacht. Ich drehe durch.
Danke für deine Hilfe. wenn du den Quellcode-Rest sehen möchtest, sag bitte einfach Bescheid. Deine Hilfe wird mir bestimmt helfen.
Danke nochmal
Mit Zitat antworten
  #11 (permalink)  
Alt 28-10-2006, 17:28
Hirnhamster
 Registrierter Benutzer
Links : Onlinestatus : Hirnhamster ist offline
Registriert seit: Oct 2006
Beiträge: 160
Hirnhamster ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
1) Wie viele überhaupt auf die Webseite gekommen sind
Dann hast du aber den falschen Ansatz, weil du jeden(!) aufruf der index.php speicherst. Drück mal F5, dann wird dir klar was ich meine
DAnn hast du 20 mal die gleiche IP in deiner Datenbank.. das wird voll

Der Name einer Tabelle ist ja afaik immer der selbe, oder legst du etwa für jeden besucher eine neue tabelle an

Zitat:
Ansonsten werden immer 2 Datensätze gespeichert. Das obwohl der Quellcode-Rest die Funktion nicht enthält und keine Aktualisierung der Webseite verursacht. Ich drehe durch.
Ja nun.. das hört sich aber irgendwie schon danach an, als würde die Funktion 2 mal aufgerufen ^^
Mit Zitat antworten
  #12 (permalink)  
Alt 28-10-2006, 20:22
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Hirnhamster
Dann hast du aber den falschen Ansatz, weil du jeden(!) aufruf der index.php speicherst. Drück mal F5, dann wird dir klar was ich meine
DAnn hast du 20 mal die gleiche IP in deiner Datenbank.. das wird voll
Ich möchte einfach am Anfang alle Besucher der Webseite merken. Auch wenn sie mehrmals auf der Webseite sind. Sagen wir es mal so, ich möchte nicht die Besucher zählen sondern die Zugriffe. Also wie viel Mals wurde die Webseite überhaupt aufgerufen (wenn ich merke die Tabelle wird zu Groß, kann ich die IPs, die mehr als 1-mal auftauchen, immer noch löschen)

Zitat:
Der Name einer Tabelle ist ja afaik immer der selbe, oder legst du etwa für jeden besucher eine neue tabelle an
der Name ist fest. Er ist einfach in der Variable gespeichert. Ich tue das immer so, damit ich es verhindern kann, alle Dateien zu ändern, wenn ich einfach den Namen einer Tabelle ändere. In diesem Falle kann ich einfach den Inhalt der Variable ändern. Dann gilt das für alle Queries, die auf diese Tabelle ausgeführt werden.


Zitat:
Ja nun.. das hört sich aber irgendwie schon danach an, als würde die Funktion 2 mal aufgerufen ^^
Ich bin sicher, dass ich die Funktion nur einmal aufrufe. Ich kann dir den gesamten Quellcode hochladen, wenn du möchtest:P
Mit Zitat antworten
  #13 (permalink)  
Alt 28-10-2006, 22:44
ThE_-_BliZZarD
 Newbie
Links : Onlinestatus : ThE_-_BliZZarD ist offline
Registriert seit: Oct 2006
Beiträge: 25
ThE_-_BliZZarD ist zur Zeit noch ein unbeschriebenes Blatt
Standard

1. Ja, den ganzen Code bitte.
2. mach mal in die Funktion SetBenutzer() folgende Zeile rein:
PHP-Code:
echo "Hier spricht der Fehlerteufel. <br>"
Dann sag uns was uns dein Dokument sagt.

A: 1. Nur einmal der Satz: Großes Problem. KA
2. Zweimal: Na siehste, also doch 2mal executet.

Mal gucken was kommt^^
Mit Zitat antworten
  #14 (permalink)  
Alt 28-10-2006, 22:57
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von ThE_-_BliZZarD

2. mach mal in die Funktion SetBenutzer() folgende Zeile rein:
PHP-Code:
echo "Hier spricht der Fehlerteufel. <br>"
Dann sag uns was uns dein Dokument sagt.

A: 1. Nur einmal der Satz: Großes Problem. KA
2. Zweimal: Na siehste, also doch 2mal executet.

Mal gucken was kommt^^
1. Das habe ich schon probiert. Der Satz wird nur einmal ausgegeben!!!

Geändert von adouzi (11-11-2006 um 17:13 Uhr)
Mit Zitat antworten
  #15 (permalink)  
Alt 04-11-2006, 19:07
adouzi
 Newbie
Links : Onlinestatus : adouzi ist offline
Registriert seit: Sep 2006
Beiträge: 27
adouzi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

keiner wollte helfen. Ich danke euch allen auf jeden Fall
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:18 Uhr.