EF-Fehler 1003 * Lose Ein.- und Auszahlen

HoB

HoB
ID: 79596
L
22 April 2006
2.521
74
moin,

ich bekomme ständig den fehler 1003, also ef-pw ist falsch. das kann aber nicht sein. da muss man ja nicht das ef-tresor-pw angeben, sondern das login-passwort und das ist 100%ig richtig. kennung passt auch und nu bin ich am verzweifeln. 8O

mal sehen, welches schlaue brain den fehler findet.. 8)

efdatendatei
PHP:
<?
 $ef_id = "1192";
 $ef_pw = "us6xft";
 $ef_k=1644;

 //-----------------------------------------------------
 //-----------------------------------------------------
 function checkLosePW($theID,$thePW,$ef_id,$ef_pw) // losepassi checken
 {
  $url = "https://klamm.de/engine/lose/saldo.php?ef_id=$ef_id&ef_pw=$ef_pw&k_id=$theID&l_pw=$thePW";
  $fp = @file($url);
  $stri = $fp[0];
  $strings = split("[|]",$stri);
                return $strings[0];
 }
 //-----------------------------------------------------
 //-----------------------------------------------------
 function sendLose($toID,$toPW,$anzahl,$zweck,$ef_id,$ef_pw,$ef_k) // lose senden
 {
  $zweck = urlencode($zweck);
  $url = "https://klamm.de/engine/lose/send.php?ef_id=$ef_id&ef_pw=$ef_pw&k_id=$toID&s=$zweck&n=$anzahl&k=$ef_k&l_pw=$toPW";
  $fp = @file($url);
  $stri = $fp[0];
  $strings = split("[|]",$stri);
  return $strings[0];
 }
 //-----------------------------------------------------
 //-----------------------------------------------------
 function getLose($fromID,$fromPW,$anzahl,$zweck,$ef_id,$ef_pw,$ef_k) // lose einziehen
 {
  $zweck = urlencode($zweck);
  $url = "https://klamm.de/engine/lose/get.php?ef_id=$ef_id&ef_pw=$ef_pw&k_id=$fromID&l_pw=$fromPW&s=$zweck&n=$anzahl&k=$ef_k";
  $fp = @file($url);
  $stri = $fp[0];
  $strings = split("[|]",$stri);
  return $strings[0];
 }
 //-----------------------------------------------------
 //-----------------------------------------------------
?>

transferdatei
PHP:
<?php 
include('efdata.php');
require("../config/config.php");
$db = mysql_connect($dbhost, $dbuser, $dbpass) or die(mysql_error());
mysql_select_db($dbname,$db) or die(mysql_error());
$ablauf=time();
$datum = date("d.m.y");
$fdaten = mysql_query("SELECT punktetransferg FROM mt_settings");
$frow2 = mysql_fetch_row($fdaten);
$idletime=time()-(86400*$frow2[0]);
$fdaten2=mysql_query("select ablauf from mt_punktetransfer where ablauf<'$idletime'");
$frow3 = mysql_fetch_row($fdaten2);
if ($frow3[0] >= 1){
 mysql_query("delete from mt_punktetransfer where ablauf<'$idletime'");
}
$daten6 = mysql_query("select punktetransferg,punktetransferk from mt_settings");
$row6 = mysql_fetch_row($daten6);
$daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
$row = mysql_fetch_row($daten);
if($row[1] > $row6[1]){
$row[1] -= $row6[1];
$update="<br>Sie können maximal <b>$row[1]</b> Lose transferieren. Transferdaten bleiben <b>$row6[0]</b> Tage gespeichert. Ihnen werden pro Transfer <b>$row6[1]</b> Lose abgezogen.<br>
Nach einem erfolgreichen Transfer, sehen Sie diesen unten in der Transferliste.<br><br><b>Internes Konto</b>";
$daten4 = mysql_query("select user from mt_user where user='$user2'");
$row4 = mysql_num_rows($daten4);
$row5 = mysql_fetch_row($daten4);

if($transfer == 'ok'){
if($user2 == ''){
$update2="Bitte einen User angeben.";
}elseif($row4 != 1){
$update2="User nicht gefunden.";
}elseif($row5[0] == $row[0]){
$update2="$row[0] ist Ihr Benutzername. Bitte einen anderen wählen.";
}elseif($punkte == ''){
$update2="Bitte die Anzahl der Lose angeben.";
}elseif($punkte <= 49999){
$update2="Bitte mindestens 50000 Lose eingeben.";
}elseif($punkte > $row[1]){
$update2="Sie können maximal $row[1] Lose transferieren.";
}else{
mysql_query("update mt_user set punkteabzug=punkteabzug-$punkte-$row6[1], guthaben=guthaben-$punkte-$row6[1] where user='$row[0]'");
mysql_query("update mt_user set punkteabzug=punkteabzug+$punkte, guthaben=guthaben+$punkte where user='$user2'");
mysql_query("insert into mt_punktetransfer (user,user2,punkte,grund,datum,ablauf) VALUES ('$row[0]','$user2','$punkte','$grund','$datum','$ablauf')");
$daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
$row = mysql_fetch_row($daten);
$row[1] -= $row6[1];
}
if($row[1] < $row6[1]){
$update="<br><font color=\"#FF0000\">Sie haben nicht genug Lose um welche zu transferieren.</font><br>Transferdaten bleiben <b>$row6[0]</b> Tage gespeichert. Ihnen werden pro Transfer <b>$row6[1]</b> Lose abgezogen.";
}else{
$update="<br>Sie können maximal <b>$row[1]</b> Lose transferieren. Transferdaten bleiben <b>$row6[0]</b> Tage gespeichert. Ihnen werden pro transfer <b>$row6[1]</b> Lose abgezogen.";
}}}else{
$update="<br><font color=\"#FF0000\">Sie haben nicht genug Lose um welche zu transferieren.</font><br>Transferdaten bleiben <b>$row6[0]</b> Tage gespeichert. Ihnen werden pro transfer <b>$row6[1]</b> Lose abgezogen.";
}
?>
<center><b><font face="Verdana" size="2">Losetransfer</font></b><font size="2" face="Verdana"><b><br></b><?php echo"$update"; ?><br><br><font color="#FF0000"><b><?php echo"$update2"; ?></b></font>
<?php
$daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
$row7 = mysql_fetch_row($daten);
if($row7[1] > $row6[1]){
echo"<form method=\"POST\" action=\"punktetransfer.php?sessionid=$sessionid\">
  <table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"250\">
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>An User<u>name</u>:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"user2\" value=\"$user2\" size=\"20\"></font></td>
    </tr>
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Lose:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"punkte\" value=\"$punkte\" size=\"20\"></font></td>
    </tr>
    <tr>
      <td width=\"50%\"><b><font face=\"Verdana\" size=\"2\">Grund:</font></b></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"grund\" value=\"$grund\" size=\"20\"></font></td>
    </tr>
  </table>
  <p><input type=\"submit\" name=\"transfer\" value=\"ok\"></p>
</center></form></font>";
}
if($loseget == 'einzahlen'){
if($userfrom == ''){
$update2="Bitte einen User angeben.";
} elseif($lose < 100){
$update2="Bitte mindestens 100 Lose eingeben.";
}else{
$res=getLose($userfrom,$losepw,$lose,"Freisitz Einzahlung",$ef_id,$ef_pw,$ef_k);
if($res==1001)
{
  $update2="$lose Lose erfolgreich eingezahlt.";
  mysql_query("update mt_user set guthaben=guthaben+$lose where user='$row[0]'");
  mysql_query("insert into mt_punktetransfer (user,user2,punkte,grund,datum,ablauf) VALUES ('- Klamm -','$row[0]','$lose','Einzahlung von Klamm','$datum','$ablauf')");
  $daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
  $row = mysql_fetch_row($daten);
}
elseif($res==1008)
{
  $update2="Fehler: Zu wenig Lose auf dem Klamm-Konto.";
}
elseif($res==1009)
{
  $update2="Fehler: Lose-Passwort falsch.";
}
else
{
  $update2="Fehler: EF-Fehler $res !";
}
}
}

if($losesend == 'auszahlen'){
$daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
$row = mysql_fetch_row($daten);
if($userto == ''){
$update2="Bitte einen User angeben.";
} elseif($lose < 5000){
$update2="Bitte mindestens 5000 Lose eingeben.";
}elseif($lose > $row[1]){
$update2="Sie können maximal $row[1] Lose transferieren.";
}else{
$res=sendLose($userto,$losepw,$lose,"Freisitz Auszahlung",$ef_id,$ef_pw,$ef_k);
if($res==1001)
{
  $update2="$lose Lose erfolgreich ausgezahlt.";
  mysql_query("update mt_user set guthaben=guthaben-$lose where user='$row[0]'");
  mysql_query("insert into mt_punktetransfer (user,user2,punkte,grund,datum,ablauf) VALUES ('$row[0]','- Klamm -','$lose','Auszahlung auf Klamm','$datum','$ablauf')");
  $daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
  $row = mysql_fetch_row($daten);
}
elseif($res==1009)
{
  $update2="Fehler: Lose-Passwort falsch.";
}
else
{
  $update2="Fehler: EF-Fehler $res !";
}
}
}
$daten = mysql_query("select user,guthaben from mt_user where session='$sessionid'");
$row = mysql_fetch_row($daten);
$loseavailable=$row[1]." Lose auf dem Freisitz-Konto.";
?>
<center><b><font face="Verdana" size="2">Lose von Klamm, oder nach Klamm Ein.-/Auszahlen</b><br>(Das Losepasswort wird nicht gespeichert!)</font><font size="2" face="Verdana"><b><br></b><br><?php echo $loseavailable; ?><br><font color="#FF0000"><b><?php echo"$update2"; ?></b></font>
<?
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
echo "<tr><td>";
echo"<form method=\"POST\" action=\"punktetransfer.php?sessionid=$sessionid\">
  <table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"250\">
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Klamm-ID:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"userfrom\" value=\"$user2\" size=\"20\"></font></td>
    </tr>
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Lose:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"lose\" value=\"$punkte\" size=\"20\"></font></td>
    </tr>
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Lose-PW:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"password\" name=\"losepw\" size=\"20\"></font></td>
    </tr>
  </table>
  <p><input type=\"submit\" name=\"loseget\" value=\"einzahlen\"></p>
</center></form></font>";
echo "</td><td width=\"25\"></td><td>";
echo"<form method=\"POST\" action=\"punktetransfer.php?sessionid=$sessionid\">
  <table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"250\">
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Klamm-ID</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"userto\" value=\"$user2\" size=\"20\"></font></td>
    </tr>
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Lose:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"text\" name=\"lose\" value=\"$punkte\" size=\"20\"></font></td>
    </tr>
    <tr>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\"><b>Lose-PW:</b></font></td>
      <td width=\"50%\"><font size=\"2\" face=\"Verdana\">
      <input type=\"password\" name=\"losepw\" size=\"20\"></font></td>
    </tr>
  </table>
  <p><input type=\"submit\" name=\"losesend\" value=\"auszahlen\"></p>
</center></form></font>";
echo "</td></tr></table>";
echo"
<br><center>
   <table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"98%\">
    <tr>
      <td colspan=\"4\">
      <p align=\"center\"><b><font size=\"2\" face=\"Verdana\">Lose übertragen</font></b></td>
    </tr>
    <tr>
      <td colspan=\"4\"><hr color=\"#000000\" size=\"0\"></td>
    </tr>
    <tr>
      <td width=\"20%\"><b><font size=\"2\" face=\"Verdana\">An User</font></b></td>
      <td width=\"20%\"><b><font size=\"2\" face=\"Verdana\">Lose</font></b></td>
      <td width=\"40%\"><b><font size=\"2\" face=\"Verdana\">Grund</font></b></td>
      <td width=\"20%\"><b><font face=\"Verdana\" size=\"2\">Datum</font></b></td>
    </tr>";
$daten2 = mysql_query("select * from mt_punktetransfer where user='$row[0]'");
while($row2 = mysql_fetch_array($daten2)) {
echo"<tr>
      <td width=\"20%\"><font size=\"2\" face=\"Verdana\">$row2[user2]</font></td>
      <td width=\"20%\"><font size=\"2\" face=\"Verdana\">$row2[punkte]</font></td>
      <td width=\"40%\"><font size=\"2\" face=\"Verdana\">$row2[grund]</font></td>
      <td width=\"20%\"><font size=\"2\" face=\"Verdana\">$row2[datum]</font></td>
</tr>";
}
echo"</table></center>";
echo"<br><br><center>
  <table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"100%\">
    <tr>
      <td colspan=\"4\">
      <p align=\"center\"><b><font size=\"2\" face=\"Verdana\">Lose bekommen</font></b></td>
    </tr>
    <tr>
      <td colspan=\"4\"><hr color=\"#000000\" size=\"0\"></td>
    </tr>
    <tr>
      <td width=\"20%\"><b><font size=\"2\" face=\"Verdana\">Von User</font></b></td>
      <td width=\"20%\"><b><font size=\"2\" face=\"Verdana\">Lose</font></b></td>
      <td width=\"40%\"><b><font size=\"2\" face=\"Verdana\">Grund</font></b></td>
      <td width=\"20%\"><b><font face=\"Verdana\" size=\"2\">Datum</font></b></td>
    </tr>";
$daten3 = mysql_query("select * from mt_punktetransfer where user2='$row[0]'");
while($row3 = mysql_fetch_array($daten3)) {
echo"<tr>
      <td width=\"20%\"><font size=\"2\" face=\"Verdana\">$row3[user]</font></td>
      <td width=\"20%\"><font size=\"2\" face=\"Verdana\">$row3[punkte]</font></td>
      <td width=\"40%\"><font size=\"2\" face=\"Verdana\">$row3[grund]</font></td>
      <td width=\"20%\"><font size=\"2\" face=\"Verdana\">$row3[datum]</font></td>
</tr>";
}
echo"</table></center>";
?>
 
Erstmal würd ich das echte passwort hier nicht klartext anzeigen.. ;)

Liebe Grüße,
Martin
 
Sicher, dass die EF-ID richtig ist? Eigentlich fangen die bei 10000 an, sind also 5-stellig.
 
@du-nervst ja, ja.. schon klar.. bin ja kein depp. ;) versuch doch ma das pw. :mrgreen:

@tleilax - siehe: du nervst.. ;-) die daten sind natürlich von mir geändert worden. es passt!;)
 
Lass Dir innerhalb der Funktion doch mal testweise die erzeugte URL ausgeben und kopier sie in den Browser. Dann weisste ja schonmal, ob's am Skript oder an den verwendeten Daten liegt.
 
ich bin leider kein checker-checker-checker, sondern nur n einfacher checker.. ;)
 
Ok, ersetz Deine EF-Datendatei durch die folgende und führ das Skript testweise aus. Da wird Dir dann 'ne URL angezeigt. Die nimmst Du, kopierst sie in den Browser und guckst, was zurückkommt. Wenn da auch der Fehler auftritt, liegt's an falschen Daten oder 'nem falschen Aufbau der URL innerhalb des Skriptes. Vielleicht siehste auch, dass irgendein Parameter leer bleibt oder so...
PHP:
<?
$ef_id = "1192";
$ef_pw = "us6xft";
$ef_k=1644;

//-----------------------------------------------------
//-----------------------------------------------------
function checkLosePW($theID,$thePW,$ef_id,$ef_pw) // losepassi checken
{
  echo $url = "https://klamm.de/engine/lose/saldo.php?ef_id=$ef_id&ef_pw=$ef_pw&k_id=$theID&l_pw=$thePW";
  die;
  $fp = @file($url);
  $stri = $fp[0];
  $strings = split("[|]",$stri);
                return $strings[0];
}
//-----------------------------------------------------
//-----------------------------------------------------
function sendLose($toID,$toPW,$anzahl,$zweck,$ef_id,$ef_pw,$ef_k) // lose senden
{
  $zweck = urlencode($zweck);
  echo $url = "https://klamm.de/engine/lose/send.php?ef_id=$ef_id&ef_pw=$ef_pw&k_id=$toID&s=$zweck&n=$anzahl&k=$ef_k&l_pw=$toPW";
  die;
  $fp = @file($url);
  $stri = $fp[0];
  $strings = split("[|]",$stri);
  return $strings[0];
}
//-----------------------------------------------------
//-----------------------------------------------------
function getLose($fromID,$fromPW,$anzahl,$zweck,$ef_id,$ef_pw,$ef_k) // lose einziehen
{
  $zweck = urlencode($zweck);
  echo $url = "https://klamm.de/engine/lose/get.php?ef_id=$ef_id&ef_pw=$ef_pw&k_id=$fromID&l_pw=$fromPW&s=$zweck&n=$anzahl&k=$ef_k";
  die;
  $fp = @file($url);
  $stri = $fp[0];
  $strings = split("[|]",$stri);
  return $strings[0];
}
//-----------------------------------------------------
//-----------------------------------------------------
?>
 
Und die URL sieht richtig aus? Dann überprüf nochmal Deine angegebenen Daten. Benutzst Du evtl Sonderzeichen in dem Passwort?
 
Könnte gut sein, da die in der URL nicht richtig übermittelt werden können. Kannst ja mal versuchen, ein urlencode() auf die Passwörter anzuwenden. Evtl klappt's dann.
 
  • Like
Reaktionen: HoB
verdammt! du hast recht.. es lag an den sonderzeichen im pw. danke dir.. hast n kleinen bonus. ;)