Hallo
Wir haben ein PHP & MySQL Update auf unsere Server durch geführt seid dem geht leider eins unsere Script nicht mehr so wie soll.
PHP Version 5.1.6
MySQL Version 5.0.33
Wir haben ein Script was Buttons 88x31 nach dem gemessenen IN Hits sotieren soll, der mit den meisten in Klicks als erstes.
Dies macht er leider nicht mehr er sortiert diese nun nach der ID.
Code des Scriptes:
Alles anzeigen
Wir haben ein PHP & MySQL Update auf unsere Server durch geführt seid dem geht leider eins unsere Script nicht mehr so wie soll.
PHP Version 5.1.6
MySQL Version 5.0.33
Wir haben ein Script was Buttons 88x31 nach dem gemessenen IN Hits sotieren soll, der mit den meisten in Klicks als erstes.
Dies macht er leider nicht mehr er sortiert diese nun nach der ID.
Code des Scriptes:
Quellcode
- class cn_mysql {
- var $connection;
- var $text;
- # MySQL Verbindung aufbauen
- function connect() {
- global $mysql_host;
- global $mysql_user;
- global $mysql_pass;
- global $mysql_db;
- global $mysql_server_error;
- global $mysql_db_error;
- $this->connection = @mysql_connect($mysql_host, $mysql_user, $mysql_pass) OR DIE ($mysql_server_error);
- mysql_select_db($mysql_db) OR DIE($mysql_db_error);
- }
- # MySQL Verbindung schließen
- function close() {
- mysql_close($this->connection);
- }
- # Einzelne Querys ausgeben
- function fetch_array($string) {
- $source = mysql_fetch_array(mysql_query($string), MYSQL_ASSOC);
- return $source;
- }
- }
- class cn_templates {
- function set_file($name, $file) {
- $name = "tpl_".$name;
- global $$name;
- $$name = implode("", file($file));
- }
- function replace($name_replace, $template) {
- $var = "tpl_".$template;
- global $$var;
- $t = count($name_replace);
- for ($i=0, $z=1; $i<=$t; $i+=2, $z+=2){
- $$var = str_replace("{".$name_replace[$i]."}", $name_replace[$z], $$var);
- }
- }
- function parse($name) {
- $var = "tpl_".$name;
- global $$var;
- echo $$var;
- }
- }
- # ------------------------------------------------------------
- # Funktionen
- # ------------------------------------------------------------
- function monat_reset__()
- {
- $mon = date("M");
- $reset = @mysql_fetch_array(mysql_query("SELECT last_reset FROM reset"));
- if( $reset['last_reset'] != $mon )
- {
- @mysql_query("DELETE FROM reset");
- @mysql_query("INSERT INTO reset (last_reset) VALUES ('$mon')");
- @mysql_query("UPDATE affiliates SET `in`='0', `out`='0'");
- }
- }
- function count_rows($tabelle) {
- $record = mysql_query("SELECT * FROM $tabelle WHERE active='1'");
- while($source = mysql_fetch_array($record)) {
- $count++;
- }
- return $count;
- }
- function add_visit($id, $art) {
- $art = strtolower($art);
- //---------------------------------------------------------------------\\
- // Alle IP-Adressen löschen, welche die Sperrzeit überschritten haben \\
- $sperrzeit = time() - (SYSTEM_AFFILIATES_IPSPERRE_STD*60*60 + SYSTEM_AFFILIATES_IPSPERRE_MIN*60);
- $query = "DELETE FROM ".TABLE_AFFILIATES_IPS." ".
- "WHERE (zeit <= '".$sperrzeit."')";
- mysql_query($query);
- //---------------------------------------------------------------------\\
- // IP-Adresse gesperrt? \\
- $query = "SELECT count(id) FROM ".TABLE_AFFILIATES_IPS." ".
- "WHERE (ip = '".$_SERVER['REMOTE_ADDR']."')".
- " AND (affiliate_id = '".$id."')".
- " AND (typ = '".$art."')";
- $result = mysql_query($query);
- list($anzahl) = @mysql_fetch_row($result);
- if (!$anzahl)
- {
- //-------------------------------------------------------------------\\
- // Die IP-Adresse ist nicht gesperrt \\
- // freie ID ermitteln \\
- $query = "SELECT id FROM ".TABLE_AFFILIATES_IPS." ORDER BY id";
- $result = mysql_query($query);
- $ip_id = 1;
- while (list($ip_ids) = @mysql_fetch_row($result))
- {
- if ($ip_ids != $ip_id)
- break;
- ++$ip_id;
- }
- //-------------------------------------------------------------------\\
- // IP-Adresse eintragen \\
- $query = "INSERT INTO ".TABLE_AFFILIATES_IPS.
- " (id, ip, affiliate_id, typ, zeit) ".
- "VALUES".
- " ('".$ip_id."', '".$_SERVER['REMOTE_ADDR']."', '".$id."', '".$art."', '".time()."')";
- mysql_query($query);
- //-------------------------------------------------------------------\\
- // Den Counter erhöhen \\
- $query = "UPDATE affiliates ".
- "SET `".$art."` = (`".$art."` + '1') ".
- "WHERE (id = '".$id."')";
- mysql_query($query);
- } // IP-Adresse gesperrt?
- }
- function check_pass() {
- global $templates;
- global $tpl_Content;
- if (empty($_SESSION['passwort'])) {
- return FALSE;
- $templates->set_file("Content", "templates/admin/login.htm");
- }
- else {
- return TRUE;
- }
- }
- function show_pages($tabelle) {
- GLOBAL $anzahl;
- GLOBAL $limit;
- $anzahl = 10;
- $rows = count_rows($tabelle);
- $count = ceil($rows/$anzahl);
- if ($_GET["page"] == "" || $_GET["page"] >= count_rows($tabelle)) {
- $_GET["page"] = $count;
- }
- $limit = $rows-($_GET["page"]*$anzahl);
- if ($limit<0) {
- $anzahl = $anzahl+$limit;
- $limit = 0;
- }
- if ($count == 1) {
- $navi = "Seite (";
- }
- else {
- $navi = "Seiten (";
- }
- $nr = 1;
- for ($i=0; $i < $count; $i++) {
- if ($i != 0) {
- $navi .= ", ";
- }
- if ($_GET["page"] == $nr) {
- $navi .= "[<a href=\"?action=admin&show=all&page=$nr\"><b>".($i+1)."</b></a>]";
- }
- else {
- $navi .= "<a href=\"?action=admin&show=all&page=$nr\">".($i+1)."</a>";
- }
- $nr++;
- }
- $navi .= ")";
- return $navi;
- }
- # ------------------------------------------------------------
- $templates = new cn_templates;
- $mysql = new cn_mysql;
- $mysql->connect();
- # ------------------------------------------------------------
- //---------------------------------------------------------------------------\\
- // Sollte die IP-Tabelle noch nicht existieren, dann wird sie jetzt erstellt \\
- // affiliate_id => ID in der Tabelle 'affiliates' \\
- // typ => 'in' oder 'out' \\
- // IP-Sperre wurde in die Funktion 'add_visit' implementiert \\
- $query = "CREATE TABLE IF NOT EXISTS ".TABLE_AFFILIATES_IPS.
- " (id INT UNSIGNED NOT NULL PRIMARY KEY,".
- " ip VARCHAR(15),".
- " affiliate_id INT UNSIGNED,".
- " typ CHAR(3),".
- " zeit INT UNSIGNED".
- " )";
- mysql_query($query);
- if (isset($_GET["id"]) && !$_GET['action'] && !$show_banner) {
- $source = $mysql->fetch_array("SELECT * FROM affiliates WHERE (id = '".$_GET["id"]."')");
- $url = $source["url"];
- add_visit($_GET["id"], "out");
- header("location: $url");
- exit;
- }
- if (isset($_GET["ref"]) && !$_GET['action'] && !$show_banner) {
- add_visit($_GET["ref"], "in");
- header("location: http://www.rb-media-group.de");
- exit;
- }
- //---------------------------------------------------------------------------\\
- // Sollen 5 durch Zufall gewählte Banner angezeigt werden? \\
- // monatlicher reset
- @monat_reset__();
- if ($show_banner)
- {
- $query__ = "SELECT `id`, `image`, `in`, `out` FROM `affiliates` WHERE `active`";
- $result__ = mysql_query($query__);
- $anzahl = @mysql_num_rows($result__);
- if ($anzahl)
- {
- mt_srand((double)microtime()*1000000);
- $banner__ = array();
- while (list($id__, $image__, $in__, $out__) = mysql_fetch_row($result__))
- {
- array_push($banner__, array($id__, $image__, $in__, $out__));
- }
- $random_banner__ = array_rand($banner__, $show_banner);
- echo "\n\n<table border='0' cellpadding='0' cellspacing='0'>\n";
- for ($nummer__ = 0; $nummer__ < count($random_banner__); $nummer__++)
- {
- printf("<tr><td align='center'><a href='partner.php?id=%1\$s' title='IN:%3\$s OUT:%4\$s' target='_blank'>".
- "<img src='%2\$s' alt='IN:%3\$s OUT:%4\$s' border='0'></a></td></tr>\n",
- $banner__[$random_banner__[$nummer__]][0], $banner__[$random_banner__[$nummer__]][1],
- $banner__[$random_banner__[$nummer__]][2], $banner__[$random_banner__[$nummer__]][3]);
- }
- echo "</table>\n\n";
- }
- }
- else
- {
- switch($_GET["action"]) {
- # Partner Buttons anzeigen
- default:
- $number_buttons = count_rows("affiliates");
- $record = mysql_query("SELECT * FROM affiliates WHERE active='1' ORDER BY 'in' DESC LIMIT 0, $buttons_anzahl");
- while($source = mysql_fetch_array($record)) {
- $i++;
- $templates->set_file("Button", "templates/button.htm");
- $templates->replace(array("ID", $source["id"],
- "Image", $source["image"],
- "IN", $source["in"],
- "OUT", $source["out"]
- ), "Button");
- $buttons .= $tpl_Button;
- $templates->set_file("Row", "templates/row.htm");
- $templates->replace(array("Buttons", $buttons
- ), "Row");
- $output .= $tpl_Row;
- $buttons = "";
- $number = $number + $buttons_per_rows;
- }
- $templates->set_file("Tabelle", "templates/table.htm");
- $templates->replace(array("Rows", $output,
- ), "Tabelle");
- $templates->parse("Tabelle");
- break;
- case "showall":
- $number_buttons = count_rows("affiliates");
- $record = mysql_query("SELECT * FROM affiliates WHERE active='1' ORDER BY 'in' DESC");
- while($source = mysql_fetch_array($record)) {
- $i++;
- $templates->set_file("Button", "templates/button.htm");
- $templates->replace(array("ID", $source["id"],
- "Image", $source["image"],
- "IN", $source["in"],
- "OUT", $source["out"]
- ), "Button");
- $buttons .= $tpl_Button;
- if ($i == ($buttons_per_rows + $number) || $i == $number_buttons) {
- $templates->set_file("Row", "templates/row.htm");
- $templates->replace(array("Buttons", $buttons
- ), "Row");
- $output .= $tpl_Row;
- $buttons = "";
- $number = $number + $buttons_per_rows;
- }
- }
- $templates->set_file("Tabelle", "templates/table.htm");
- $templates->replace(array("Rows", $output,
- ), "Tabelle");
- $templates->parse("Tabelle");
- break;
- case "box":
- $buttons_anzahl = "6";
- $number_buttons = count_rows("affiliates");
- $record = mysql_query("SELECT * FROM affiliates WHERE active='1' ORDER BY 'in' DESC LIMIT 0, $buttons_anzahl");
- while($source = mysql_fetch_array($record)) {
- $i++;
- $templates->set_file("Button", "templates/button.htm");
- $templates->replace(array("ID", $source["id"],
- "Image", $source["image"],
- "IN", $source["in"],
- "OUT", $source["out"]
- ), "Button");
- $buttons .= $tpl_Button;
- if ($i == ($box_per_rows + $number) || $i == $number_buttons) {
- $templates->set_file("Row", "templates/row.htm");
- $templates->replace(array("Buttons", $buttons
- ), "Row");
- $output .= $tpl_Row;
- $buttons = "";
- $number = $number + $box_per_rows;
- }
- }
- $templates->set_file("Tabelle", "templates/table.htm");
- $templates->replace(array("Rows", $output,
- ), "Tabelle");
- $templates->parse("Tabelle");
- break;
- case "add":
- if ($_POST["partner_url"] && $_POST["partner_image"] && $_POST["partner_email"] != "") {
- $query = mysql_query ("INSERT affiliates (url, image, email, active) VALUES ('".$_POST['partner_url']."', '".$_POST['partner_image']."', '".$_POST['partner_email']."', '0')");
- if ($query) {
- mail($admin_email, "RB Media Group Partner Anmeldung", $new_partner, "From: ".$admin_email." \nReply-To: ".$admin_email." \n");
- header("location: http://www.rb-media-group.de/affiliates/danke.html");
- die("Du wurdest erfolgreich zu den Partnern von RB Media Group hinzugefügt. Wenn der Admin dich freigeschaltet hat, bekommst du eine E-Mail mit allen nötigen Informationen");
- }
- else {
- die("Es gab ein Problem beim hinzufügen des Partners. Bitte kontaktieren Sie den Admin.");
- }
- }
- else {
- die("Du hast nicht alle nötigen Felder ausgefüllt");
- }
- break;
- # Admin Bereich
- case "admin":
- session_start();
- if (!check_pass()) {
- $_GET["show"] = "login";
- }
- switch ($_GET["show"]) {
- default:
- case "all":
- $templates->set_file("Content", "templates/admin/all.htm");
- $pages = show_pages("affiliates");
- $record = mysql_query("SELECT * FROM affiliates WHERE active='1' ORDER BY id DESC LIMIT $limit, $anzahl");
- while($source = mysql_fetch_array($record)) {
- $templates->set_file("All", "templates/admin/all_show.htm");
- $templates->replace(array("Image", $source["image"],
- "ID", $source["id"],
- "IN", $source["in"],
- "OUT", $source["out"],
- "URL", $source["url"],
- "E-Mail", $source["email"]
- ), "All");
- $partner .= $tpl_All;
- }
- $templates->replace(array("Partner", $partner,
- "Pages", $pages
- ), "Content");
- break;
- case "edit":
- $templates->set_file("Content", "templates/admin/edit.htm");
- $record = mysql_query("SELECT id FROM affiliates ORDER BY id ASC");
- while($source = mysql_fetch_array($record)) {
- $partner .= "<option>".$source["id"]."</option>";
- }
- if (isset($_POST["edit_id"])) {
- $source = $mysql->fetch_array("SELECT * FROM affiliates WHERE id='".$_POST["edit_id"]."'");
- $templates->set_file("Edit_Show", "templates/admin/edit_show.htm");
- $templates->replace(array("Image", $source["image"],
- "URL", $source["url"],
- "E-Mail", $source["email"],
- "ID", $source["id"]
- ), "Edit_Show");
- }
- $templates->replace(array("Partner_IDs", $partner,
- "Edit_Field", $tpl_Edit_Show
- ), "Content");
- if ($_GET["do"]=="update") {
- $query = mysql_query ("UPDATE affiliates SET image='".$_POST['partner_image']."', url='".$_POST['partner_url']."', email='".$_POST['partner_email']."' WHERE id='".$_POST["partner_id"]."'");
- if ($query) {
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin&show=edit\">";
- $tpl_Content = "Der Partner wurde erfolgreich upgedated. Du wirst in 2 sek. weitergeleitet...";
- }
- else {
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin&show=edit\">";
- $tpl_Content = "Es gab ein Problem deinen Partner zu bearbeiten. Du wirst in 2 sek. weitergeleitet...";
- }
- }
- if ($_GET["delete"]!="") {
- $query = mysql_query ("DELETE FROM affiliates WHERE id='".$_GET["delete"]."'");
- if ($query) {
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin&show=all\">";
- $tpl_Content = "Dein Partner wurde erfolgreich gelöscht. Du wirst in 2 sek. weitergeleitet...";
- }
- else {
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin&show=all\">";
- $tpl_Content = "Es gab ein Problem deinen Partner zu löschen. Du wirst in 2 sek. weitergeleitet...";
- }
- }
- break;
- case "activate":
- $templates->set_file("Content", "templates/admin/activate.htm");
- $record = mysql_query("SELECT * FROM affiliates WHERE active='0' ORDER BY id DESC");
- while($source = mysql_fetch_array($record)) {
- $templates->set_file("Activate", "templates/admin/activate_show.htm");
- $templates->replace(array("Image", $source["image"],
- "ID", $source["id"],
- "IN", $source["in"],
- "OUT", $source["out"],
- "URL", $source["url"],
- "E-Mail", $source["email"]
- ), "Activate");
- $partner .= $tpl_Activate;
- }
- $templates->replace(array("Partner", $partner,
- ), "Content");
- if (isset($_GET["activate"])) {
- $query = mysql_query ("UPDATE affiliates SET active='1' WHERE id='".$_GET["activate"]."'");
- if ($query) {
- $source = $mysql->fetch_array("SELECT * FROM affiliates WHERE id='".$_GET["activate"]."'");
- $button_url = $homepage."/partner.php?ref=".$source["id"];
- $partner = $partner_email.$button_url;
- echo $partner;
- $email = mail($source["email"], "RichBone.de Partner Anmeldung", $partner, "From: ".$admin_email." \nReply-To: ".$admin_email." \n");
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin&show=activate\">";
- $tpl_Content = "Dein Partner wurde erfolgreich freigeschaltet.<br>";
- if ($email) {
- $tpl_Content = "E-Mail erfolgreich an Partner geschickt.<br>Du wirst in 2 sek. weitergeleitet...";
- }
- else {
- $tpl_Content = "Es gab ein Problem beim senden der E-Mail an deinen Partner.<br>Du wirst in 2 sek. weitergeleitet...";
- }
- }
- else {
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=adminn&show=activate\">";
- $tpl_Content = "Es gab ein Problem deinen Partner freizuschalten. Du wirst in 2 sek. weitergeleitet...";
- }
- }
- break;
- case "reset":
- $query = mysql_query("UPDATE affiliates SET `in`='0', out='0'");
- if ($query) {
- $tpl_Content = "Daten erfolgreich resetet";
- }
- else {
- $tpl_Content = "Es gab ein Problem beim reseten der Daten";
- }
- break;
- case "login":
- if ((!isset($_POST["login_passwort"]))) {
- $templates->set_file("Content", "templates/admin/login.htm");
- }
- else {
- if ($passwort == $_POST["login_passwort"]) {
- $_SESSION['passwort'] = $_POST["login_passwort"];
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin&show=all\">";
- $tpl_Content = "Du wurdest erfolgreich eingeloggt. Du wirst in 2 sek. weitergeleitet...";
- }
- else {
- $templates->set_file("Content", "templates/admin/login.htm");
- $tpl_Content .= "<center>Du hast ein falsches Passwort eingegeben.</center><br>";
- }
- }
- break;
- case "logout":
- session_destroy();
- $weiterleitung = "<meta http-equiv=\"refresh\" content=\"2; URL=partner.php?action=admin\">";
- $tpl_Content = "Du wurdest erfolgreich ausgeloggt. Du wirst in 2 sek. weitergeleitet...";
- break;
- }
- $templates->set_file("Admin", "templates/admin/main.htm");
- $templates->replace(array("Content", $tpl_Content,
- "Weiterleitung", $weiterleitung
- ), "Admin");
- $templates->parse("Admin");
- break;
- }
- }
- # ------------------------------------------------------------
- $mysql->close();