Was genau klappt denn nicht? Hast Du das PHP-Script auch mal ohne Flash ausprobiert, ob es zu Fehlermeldungen kommt?
Hallo liebe TP Leuts,
ich stehe hier vor einem riesigen Problem. Ich habe auf der Seite www.flashhilfe.de ein Tutorial über einen Flash Counter gefunden der auf PHP und MySQL basiert.
Ich habe hier Connect Datei mit den dazugehörigen Codes geschrieben und den Flash Film erstellt. Nur kriege ich das Ding irgendwie nicht zum laufen.
Wer kann mir helfen?
Hier das Script für den Counter:
<?
//------------------------------------------------------------------------
// Copyright by SNCIS
//------------------------------------------------------------------------
// Variablen für die Datenbanken
$server = "locahost"; // Serverhost
$user = "xxxxx"; // Username
$pass = "xxxxx"; // Passwort
$dbname = "xxxxx"; // Datenbankname
// Verbindung mit Datenbank herstellen
/*
$conn = mysql_connect($server, $user, $pass);
$query = "use $dbname";
if (!mysql_query($query, $conn)) die("Datenbank existiert nicht.\n");
*/
// Abfrage der Datenbank
$result = mysql_query("SELECT * FROM counter",);
if (!$result) { echo "Es ist ein Fehler in der Datenbank-Verbindung aufgetreten.\n";
exit;
}
$daten = mysql_fetch_array($result);
$counter = $daten[counter];
// IP Sperre für Besucher
$ip = $REMOTE_ADDR;
session_start();
$session_ip = session_is_registered($ip);
if($ip == $session_ip)
{
}
else
// Erhöhung des Counters um 1
{
$counter = ++$counter;
$result = mysql_query("UPDATE counter SET counter = '$counter' WHERE id = '1'",
$conn_id);
if (!$result) {
echo "Es ist ein Fehler in der Datenbank-Verbindung aufgetreten.\n";
exit;
}
}
// Teilen des Counters in 7 Teile
$counter = strval($counter);
$counter = chunk_split($counter,1,";");
$counter = explode(";",$counter);
// Ausgabe des Counters in 7 Zahlen
echo "count1=".$counter[0]."&count2=".$counter[1]."&count3=".
$counter[2]."&count4=".$counter[3].
"&count5=".$counter[4]."&count6=".$counter[5]."&count7=".$counter[6];
session_register($ip);
mysql_close($conn);
?>
?>
Und hier der Flash Film:
Visions are no longer an empty phrase - they will become reality now...
Was genau klappt denn nicht? Hast Du das PHP-Script auch mal ohne Flash ausprobiert, ob es zu Fehlermeldungen kommt?
Das Script gibt keine Fehler-Meldung aus. Ich sehe nur meinen Counter nicht. Also habe ich meine Zweifel, dass irgend etwas mit dem Flash Film nicht stimmt.
Gruss SNCIS
Visions are no longer an empty phrase - they will become reality now...
Da muss ich leider passen - Flash ist nicht wirklich mein Ding.![]()
Halb so schlimm. Wir haben ja noch Lol@ oder The0bone. Gell ?
Visions are no longer an empty phrase - they will become reality now...
Hi !!
ich bin mir nicht sicher... aber warum ist dieser Teil auskommentiert??
PHP-Code:/*
$conn = mysql_connect($server, $user, $pass);
$query = "use $dbname";
if (!mysql_query($query, $conn)) die("Datenbank existiert nicht.\n");
*/
Ist die Verbindung zur Datenbank nicht ne' wichtige Sache... bei nem DB-basierten Counter??
..vielleicht hilfts ja...
achja... wenn die Verbindung stehen sollte, mußt du natürlich auch mit dem "richtigen" Variable deiner Verbindung arbeiten $conn und nicht:
$result = mysql_query("UPDATE counter SET counter = '$counter' WHERE id = '1'",
$conn_id);
Hast du denn mal gecheckt, ob überhaupt irgendwas in deiner DB passiert?? Entweder der Counter hochzählt...oder die IP-Sperre gesetzt wird??
Gruß Jan
Moin!
Würde auch erstmal vorschlagen, das Script ohne Flash zum laufen zu bringen!
Flash ist "nur" das Anzeigemittel des Counters. Und da sollte man im Fehlerfall alle Quellen ausschliessen! Ohne Flash geht es dabei einfacher zu testen!
Also, erst das Script Testen! Dann Flash!
Erst Flash pur! Gib ihm selbst die Daten. Nicht über das Scirpt! Schreib ins erste Schlüsselbild die Grösse deiner Variable für die Besucher! Und lass teste es.
Wenn beide Einzelstücke laufen, dann kannst du sie zusammenbringen!
the0bone
Wissen ist Macht, nichts Wissen macht nichts! Doch auch auch wenn man es nicht besser weiss, sollte man beim Erstellen einer Webseite auf Frames und Tabellen verzichten.
So ich habe jetzt alles in den SCRIPTEN LAUFFÄHIG BEKOMMEN. Nur schaut euch mal meinen Film an:
http://www.inter-netsolutions.de/test/counter.html
Irgend etwas ist dort noch falsch. Ich bekomme keine Zahlen auf meinem Counter.
Visions are no longer an empty phrase - they will become reality now...
Dann gib doch mal die Fla!
the0bone
Wissen ist Macht, nichts Wissen macht nichts! Doch auch auch wenn man es nicht besser weiss, sollte man beim Erstellen einer Webseite auf Frames und Tabellen verzichten.
Woher soll den jetzt dein Flash wissen, welche Zahlen es anzeigen soll?? Du mußt doch dem Film Variablen übergeben, die er darstellen soll z.B. so:
http://www.inter-netsolutions.de/tes...nt2=3&count3=5
Das funzt supa... und genau diese zeichenkette sollte dir dein PHP-Script doch geben...
Gruß Jan
@Stuck Mojo
Was hast du gemacht?
Visions are no longer an empty phrase - they will become reality now...
Ich hab mir dein Script angeguckt und dort wirden in einer Zeile die Variablen, die an das Flash per GET weitergegeben werden sollen zusammen gesetzt:
da dachte ich mir... hängst du die einfach mal hinten an die Flashdatei ran... und so issesPHP-Code:echo "count1=".$counter[0]."&count2=".$counter[1]."&count3=".
$counter[2]."&count4=".$counter[3].
"&count5=".$counter[4]."&count6=".$counter[5]."&count7=".$counter[6];
Vielleicht solltest Du die Variablen nicht mit echo ausgeben, sondern einfach einer Variable zuweisen.
und dann auf deiner Seite, wo du die Variable brauchst... nämlich in deinem Flashaufruf einfach wie folgt einsetzten:PHP-Code:$getvars = "count1=".$counter[0]."&count2=".$counter[1]."&count3=".
$counter[2]."&count4=".$counter[3].
"&count5=".$counter[4]."&count6=".$counter[5]."&count7=".$counter[6];
Wenn jetzt dein Counterscript funktioniert... dann sollte es funzen..Code:<param name=movie value="counter.swf?<?=$getvars;?>">
Gruß Jan
@Stuck Mojo
Hier habe ich nochmal den Quelltext wie er momentan ist:
<?
// ---------------------------------------------------------------------------
// SNCIS
// Copyright 2002 - All Rights reserved
// ---------------------------------------------------------------------------
// Verweis auf connect.php
include('connect.php');
// Abfrage der Datenbank
$result = mysql_query("SELECT * FROM counter", $verbindung);
if (!$result)
{
echo "Verbindung zur Datenbank konnte nicht hergestellt werden.\n";
exit;
}
$daten = mysql_fetch_array($result);
$counter = $daten[counter];
// IP Sperre für Besucher
$ip = $REMOTE_ADDR;
session_start();
$session_ip = session_is_registered($ip);
if($ip == $session_ip)
{
}
else
// Erhöhung des Counters um 1
{
$counter = ++$counter;
$result = mysql_query("UPDATE counter SET counter = '$counter' WHERE id = '1'", $verbindung);
if (!$result)
{
echo "Verbindung zur Datenbank konnte nicht hergestellt werden.\n";
exit;
}
}
// Teilen des Counters in 7 Teile
$counter = strval($counter);
$counter = chunk_split($counter,1,";");
$counter = explode(";",$counter);
// Ausgabe des Counters in 7 Zahlen
echo "count1=".$counter[0]."&count2=".$counter[1]."&count3=".
$counter[2]."&count4=".$counter[3].
"&count5=".$counter[4]."&count6=".$counter[5]."&count7=".$counter[6];
session_register($ip);
mysql_close($verbindung);
?>
Also, die Verbindung zur Datenbank (connect.php) funktioniert einwandfrei. Nur habe ich jetzt immer noch Probleme mit diesem Script. Irgendwo sitzt da noch der Teufel drinn. Und zwar muss irgend etwas mit den Verweisen zur Datenbank sein. Wie gesagt der Connect funktioniert 100%. Nur die Auswahl mit der Tabelle, da denke ich hakt es. Ich habe nur eine Datenbank, in der jedoch 3 Tabellen sind. Die ich für den Counter benötige ist nur eine und heisst "counter". Meine Datenbank hat aber auch noch einen Namen. Ich füge die Connect Datei nochmals anbei.
Gruss Sascha
Visions are no longer an empty phrase - they will become reality now...
Wie gesagt, der Connect Aufbau funtzt wunderbar.
Hier der Code aus der "connect.php"
// Variablen für die Datenbanken
$host = "localhost"; // Serverhost
$user = "xxxx"; // Username
$passwort = "xxxx"; // Passwort
$dbname = "dbxxxx"; // Datenbankname
// Herstellen der Verbindung zur Datenbank
$verbindung = mysql_connect($host, $user, $passwort);
if($verbindung)
{
echo "Verbindung mit Datenbank wurde hergestellt.<br>\n";
mysql_close();
}
else
{
echo "Verbindung zur Datenbank konnte nicht hergestellt werden.<br>\n";
echo mysql_errno() . ": " . mysql_error() . "<br>\n";
}
?>
Geändert von SNCIS (21.01.2002 um 09:58 Uhr)
Visions are no longer an empty phrase - they will become reality now...
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)