Isch2k Geschrieben 26. März 2003 Geschrieben 26. März 2003 Hi, ich habe für meine HP vor langer Zeit eine nette gallery programmiert, welche alle Bilder in verschiedenen Verzeichnissen ausliest und diese automatisch mit vorschau, thumbnails und vielem mehr anzeigt. (anschauen könnt Ihr euch das auf www.isch2k.net - falls das zur Fehlerbehebung weiterhilft) Vor einigen Tagen kam ich auf die Idee einen "klick-counter" hinzuzufügen. Eine Routine soll überprüfen, ob das vorhandende Bild schon in der DB eingetragen ist oder nicht. Ist es eingetragen soll das Feld 'clicks' um 1 erhöht werden. Ansonsten soll das Bild mit pfad, dateiname und einem click eingetragen werden. $pic und $dir nehme ich aus einem Array. Das ganze funktioniert nur leider nicht. beim refreshen wird der counter zwar noch erhöht, ruf ich nun aber nun eine andere seite (bild) auf und dann wieder das vorherige steht der counter wieder auf 1. 'clicks' wird also überschrieben ! Schaut euch einfach mal den Codeschnipsel an: <?php // *schnipp* mysql_connect($server, $db_user, $db_pass) or die ("CONNECT ERROR"); $anzahl=mysql_db_query($database, "SELECT * FROM $db_gallery_clicks where dir='$picdir' and pic='$pic'"); if (mysql_num_rows($anzahl) == 0) { mysql_db_query($database, "INSERT INTO $db_gallery_clicks (dir,pic,clicks) VALUES ('$picdir','$pic','1')") or die("INSERT Error in $db_gallery_clicks"); $showanzahl = "1"; } else { $sql_row = @mysql_fetch_array($anzahl); $showanzahl = $sql_row["clicks"] + 1; mysql_db_query($database, "UPDATE $db_gallery_clicks SET `dir`='$picdir', `pic`='$pic', `clicks`='$showanzahl' LIMIT 1") or die("UPDATE Error in $db_gallery_clicks"); } // *schnapp* ?> [/PHP] Zitieren
korea1 Geschrieben 27. März 2003 Geschrieben 27. März 2003 ich weiss nicht obs daran liegt, aber ich mach dass immer so und bei mir gehts: if((mysql_num_rows($anzahl)) == 0) [/PHP] mfg korea1 Zitieren
Art Geschrieben 27. März 2003 Geschrieben 27. März 2003 hatte nicht jemand gepostet, dass es unter umständen nicht mehr mit mysql_db_query funzt je nach php version. versuchs mal mit mysql_query. Zitieren
Isch2k Geschrieben 27. März 2003 Autor Geschrieben 27. März 2003 also erstma danke für die Antworten. Ich werde das heute Mittag gleich mal ausprobieren. Ich war mit meinem Latein echt am Ende! ;p Wobei ich mir das mit der zusätzlichen Umklammerung nicht vorstellen kann. Muss ich bei mysql_query irgendentwas beachten? Hab den Syntax grad nicht ganz im Kopf... Zitieren
Spike Geschrieben 27. März 2003 Geschrieben 27. März 2003 http://www.php.net/manual/de/function.mysql-query.php Schau dort mal. Zitieren
Spike Geschrieben 27. März 2003 Geschrieben 27. März 2003 P.S. Wenn man unter http://www.php.net/manual/de/function.mysql-db-query.php nachschaut erfährt man folgendes: Anmerkung: Diese Funktion ist seit PHP 4.0.6 veraltet. Verwenden Sie diese Funktion nicht. Stattdessen sollten Sie die Funktionen mysql_select_db() und mysql_query() verwenden. Ich benutze schon seit Ewigkeiten mysql-query(). Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.