Hilfe zu einem PHP-Flash Kombi Script

@jw-lighting danke für Deine Hilfe ich wäre fast verzweifelt mit dem Voting2.0 System… :ps:

Also liegt es wohl am Server von bplaced, ok.
Hihi…meine nächste Frage ist, ob es wohl die Möglichkeit gibt dies einzuschalten von Seitens bplaced, wenn man mal nachfragt?

Und zu dem Code…prima, jetzt muss ich es nicht mehr manuell erstellen…danke. :slight_smile:

Eine IP Sperre brauch ich nicht unbeding für dieses Script.Aber interessant wäre der Code trotzdem.

[quote=„mhc2004“]@jw-lighting danke für Deine Hilfe ich wäre fast verzweifelt mit dem Voting2.0 System… :ps:

Also liegt es wohl am Server von bplaced, ok.
Hihi…meine nächste Frage ist, ob es wohl die Möglichkeit gibt dies einzuschalten von Seitens bplaced, wenn man mal nachfragt?

Und zu dem Code…prima, jetzt muss ich es nicht mehr manuell erstellen…danke. :slight_smile:

Eine IP Sperre brauch ich nicht unbeding für dieses Script.Aber interessant wäre der Code trotzdem.[/quote]
Hey,

also bei bplaced wird eigentlich standardmäßig für keinen user weitere Sachen aktiviert… :wink:

Naja mich würds auch interessieren :smiley:

Grüße

hihi…in den agb’s steht das man zumindest nett fragen kann danach…mal sehen was passiert. :smiley:

@jw-lighting

nein ich glaube nicht das das script das versucht ne flash datei zu erstellen.
mit der flashoberfläche sage ich beim betätigen des buttons"vote anlegen" der schreiben2.php3 Datei das diese drei Textdateien anlegen soll.Dies funktioniert nur wenn ich in der schreiben2.php3 den username und das passwort rausnehme.Nur wenn ich im flash admin menü eine frage erstelle und sie speichern will müsste ja in der angelegten textdatei diese frage geschrieben werden.das geht schon nicht obwohl chmod der txt datei 777 ist.
hier mal die codes:

aus flash admin menü: “Vote erstellen” Button

on (release) { for (i=0; i<j; i++) { _root["wx"+i] = _root["t"+i].eingabe+"|"+_root["t"+i].st+"|"+_root["t"+i].id; } maxwert = j; loadVariablesNum("schreiben2.php3", 0, "POST");

Die schreiben2.php3 Datei dazu:

[code]<?

$user =“admin”;
$passwort = “adminpw”;

if ($auser == $user && $apasswort == $passwort) {

$datei = “wahl.txt”;

$frag_dat = fopen(“frage.txt”,“w”);
fwrite($frag_dat,"&frage=$frage");

$reload_dat = fopen($datei,“w”);
for ($i=0; $i<$maxwert; $i++) {
echo fwrite($reload_dat,$GLOBALS[“wx”.$i]."\n");
}
fclose($reload_dat);
fclose($frag_dat);

function init() {

$wahl_array = file(“wahl.txt”);
$reload_dat = fopen(“wahl.txt”,“w”);

// Dateien

$reload_datt = fopen(“themen.txt”,“w”);
$reload_dats = fopen(“stimm.txt”,“w”);

// Rubrik

fwrite($reload_datt,"&thema=");
fwrite($reload_dats,"&stimmen=");

// Durchlauf
for ($i=0; $i<sizeof($wahl_array); $i++) {
list($Apart,$Astimmen,$Azahl) = split("|",$wahl_array[$i]);

          fwrite($reload_datt,"$Apart,");
          fwrite($reload_dats,"$Astimmen,");
          fwrite($reload_dat,"$Apart|$Astimmen|$Azahl");             
        
    }    

fclose($reload_dats);
fclose($reload_datt);
fclose($reload_dat);
}

$i=0;

init();

echo “&meldung=Vorgang erfolgreich !”;

} else {
echo “&meldung=Fehler !”;
}

?>[/code]
Dann sind noch folgende php Dateien dabei:
vote7.php3

[code]<?

/////////////////////////////////////////////////////////////////

$janein =1;
$zeit =1;
$ipdatei = “ip.txt”;

/////////////////////////////////////////////////////////////////

function checkIP($rem_addr) {
global $ipdatei,$zeit;
$ip_array = file($ipdatei);
$reload_dat = fopen($ipdatei,“w”);
$this_time = time();
for ($i=0; $i<sizeof($ip_array); $i++) {
list($ip_addr,$time_stamp) = split("|",$ip_array[$i]);
if ($this_time < ($time_stamp+31246060$zeit)) {
if ($ip_addr == $rem_addr) {
$found=1;
}
else {
fwrite($reload_dat,"$ip_addr|$time_stamp");
}
}
}
fwrite($reload_dat,"$rem_addr|$this_time\n");
fclose($reload_dat);
return ($found==1) ? 1 : 0;
}

/////////////////////////////////////////////////////////////////

function wahlen($w_part) {
$wahl_array = file(“wahl.txt”);
$reload_dat = fopen(“wahl.txt”,“w”);

// Dateien

$reload_datt = fopen(“themen.txt”,“w”);
$reload_dats = fopen(“stimm.txt”,“w”);

// Rubrik

fwrite($reload_datt,"&thema=");
fwrite($reload_dats,"&stimmen=");

// Durchlauf

for ($i=0; $i<sizeof($wahl_array); $i++) {
list($Apart,$Astimmen,$Azahl) = split("|",$wahl_array[$i]);
if ($Apart == $w_part) {
$Astimmen = $Astimmen + 1;
fwrite($reload_datt,"$Apart,");
fwrite($reload_dats,"$Astimmen,");
fwrite($reload_dat,"$Apart|$Astimmen|$Azahl");
}
else {
fwrite($reload_datt,"$Apart,");
fwrite($reload_dats,"$Astimmen,");
fwrite($reload_dat,"$Apart|$Astimmen|$Azahl");
}
}
fclose($reload_dats);
fclose($reload_datt);
fclose($reload_dat);
}

/////////////////////////////////////////////////////////////////

if ($janein==0 || ($janein==1 && checkIP($REMOTE_ADDR)==0)) {

$i=0;

wahlen($partei);
echo "&meldung=Ihre Stimme ging an: ".strtoupper($partei);

} else {

echo “&meldung=Sie haben bereits eine Stimme abgegeben”;

}
?>[/code]

und lesen.php3

[code]<?
$datei = “wahl.txt”;
$dateiFrage = “frage.txt”;

function lesenNr() {
global $datei;
global $dateiFrage;
$wahl_array = file($datei);
$reload_dat = fopen($datei,“r”);
$reload_datF = fopen($dateiFrage,“r”);
echo “&ein=”;
for ($i=0; $i<sizeof($wahl_array); $i++) {
list($name) = split("\n",$wahl_array[$i]);
echo $name.’,’;
}

echo fgets($reload_datF,1000);

fclose($reload_dat);
fclose($reload_datF);
}
lesenNr();
?>[/code]

Hey,

hat jetzt noch jemand ne ahnung wegen der IP sperre, also das jede IP nur einmal am Tag voten darf?

Grüße

Das löst du mit ner datenbank, oder Sessions.

Versuch mal, die Dateinamen endung von .php3 auf .php zu ändern, den PHP 3 ist auf bplaced nicht installiert :smiley: Vllt liegts daran.

Hi…

ich glaube das hatte ich schon mal probiert, aber werd es dennoch mal testen.
:slight_smile:

[quote=“Spandauer007”]Hey,

hat jetzt noch jemand ne ahnung wegen der IP sperre, also das jede IP nur einmal am Tag voten darf?

Grüße[/quote]
Mir hilft keiner :cry:

ich sagte doch:

Sessions oder Datenbank.

Ja ich würde es gerne über die Datenbank machen, aber ich denke über ne Session ist es einfacher nicht wahr?

Grüße

klar, wor allem sparst du dir ne Menge Datenmüll. :wink:
Zudem hast du Leute, die ständig ihre IP wechseln damit auch noch drin, da du auf die Existenz der Session prüfen kannst, nicht nur auf die IP.
Im umgekehrten kann man aber auch einfach das Sessioncookie löschen.
Am besten wäre also, beides gleichzeitig einzusetzen. Aber letzendlich ist eine solche IP-Sperre nie wirklich sicher ^^ :smiley:

Hey,

ja also ich würd es gern mit einem Cookie machen…

Frage ist bloß wie man das macht^^

Grüße

cookie ist auch ne gute idee:

// zum setzen des cookies
setcookie("vote_sperre", time(), time()+5*31*24*60*60); // setzt das cookie mit verfallsdatum in 5 monaten (5*31*24*60*60 sek) und dem aktuellen timestamp als wert


//
//zum feststellen, ob cookie gesetzt:
if(isset($_COOKIE['vote_sperre'])){
// mache bekannt, das das voten nicht möglich ist
exit; // beendet das script, da man nicht voten kann. vorher muss natürlich alles an offenem html geschlossen werden!
}

Das ist aber extrem unsicher und sollte eher nicht verwendet werden :wink:

klar, sollte man mit ner datenbank koppeln. das war ja auch nur sone idee. das man das etwas genauer umsetzen muss, ist schon klar.

und, wie ich schon sagte, ganz sicher ist sowas nie…

Naja ich mach sowas lieber mit Cookies…die meisten die auf die HomePage gehen wissen sowas nicht^^

wo soll ich den code den jetzt einfügen??

[code]<?
//User, password & database
$choice =$_POST[‘choice’];
$user=“USER”;
$password=“PASSWORT”;
$database=“DATABASE”;;
mysql_connect(localhost,$user,$password);
@mysql_select_db($database) or die( “Unable to connect to database”);

// what choice did the user choose in flash?
if($choice == 1){
$query=“UPDATE votesystem SET vote1=vote1+1”;
}
if($choice == 2){
$query=“UPDATE votesystem SET vote2=vote2+1”;
}
if($choice == 3){
$query=“UPDATE votesystem SET vote3=vote3+1”;
}
if($choice == 4){
$query=“UPDATE votesystem SET vote4=vote4+1”;
}
mysql_query($query);
//Get values from the database
$query=“SELECT * FROM votesystem”;
$result=mysql_query($query);

//What are the values from the database?
$vote1_out=mysql_result($result,0,“vote1”);
$vote2_out=mysql_result($result,0,“vote2”);
$vote3_out=mysql_result($result,0,“vote3”);
$vote4_out=mysql_result($result,0,“vote4”);
//Votes in total
$total=$vote1_out+$vote2_out+$vote3_out+$vote4_out;
//Info to send back to flash:
$values="&totalVotes=$total&vote1total=$vote1_out&vote2total=$vote2_out&vote3total=$vote3_out&vote4total=$vote4_out";
echo “$values”;
mysql_close();
?>[/code]

nimm den code hier:

<?php

//
//zum feststellen, ob cookie gesetzt:
if(isset($_COOKIE['vote_sperre'])){
echo "Sie haben bereits gevotet!";
exit; 
}

// setze sperren keks
setcookie("vote_sperre", time(), time()+5*31*24*60*60);
//User, password & database
$choice = (int) $_POST['choice'];
$user="Your user";
$password="Your password";
$database="Your database";;
@mysql_connect(localhost,$user,$password) or die("Konnte mit MySQL-Server nicht verbinden!");
@mysql_select_db($database) or die("Konnte mit Datenbank nicht verbinden!");
// what choice did the user choose in flash?
switch($choice){
case 1:
$up_sql = "UPDATE votesystem SET vote1=vote1+1";
break;
case 2:
$up_sql = "UPDATE votesystem SET vote2=vote2+1";
break;
case 3:
$up_sql = "UPDATE votesystem SET vote3=vote3+1";
break;
case 4:
$up_sql = "UPDATE votesystem SET vote4=vote4+1";
break;
default:
echo "Ungültige Auswahl!";
exit;
}
$up_query = mysql_query($up_sql);

if(!$up_query){ // Datenbankfehler
echo "Datenbankfehler: " . mysql_error();
}

//Get values from the database
$sel_sql = "SELECT * FROM votesystem";
$result = mysql_query($query);
if(!$result){
echo "Datenbankfehler: " . mysql_error();
exit;
}
if(mysql_num_rows($results) < 1){ // kein ergebniss
echo "Hier kein Ergebniss!";
}else{
//What are the values from the database?
$vote1_out=mysql_result($result,0,"vote1");
$vote2_out=mysql_result($result,0,"vote2");
$vote3_out=mysql_result($result,0,"vote3");
$vote4_out=mysql_result($result,0,"vote4");
//Votes in total
$total=$vote1_out+$vote2_out+$vote3_out+$vote4_out;
//Info to send back to flash:
$values="&totalVotes=$total&vote1total=$vote1_out&vote2total=$vote2_out&vote3total=$vote3_out&vote4total=$vote4_out";
echo $values;
}
mysql_close();
?>

Hey,

man müsste das glaub ich noch in Flash inigrieren:

Spandauer007.bplaced.net/Vote.swf

Grüße

Van Helsing RULEZ!!!

PS: This is no Spam

[quote=„michi7x7“]
PS: This is no Spam[/quote]

Aber sicher, dies auch nicht :motz: !haue