[PHP]Problem mit Vergleichsoperatoren
-
Hallo Leute,
Ich komm einfach nicht weiter....
Vieleicht könnt ihr mir helfen als erstes hier der Code:
<?php session_start(); require('includes/config.php');//Konfiguration laden require('includes/konstant.php');//allgemeine Variablen laden require('function/function.php');//allgemeine Variablen laden $username = $_SESSION["username"]; $id = mysql_real_escape_string($_GET['id']); $typ = mysql_real_escape_string($_GET['typ']); $getusername = mysql_real_escape_string($_GET['username']); $step = mysql_real_escape_string($_GET['step']); if($step == '1') { if($username == $getusername) { if(!empty($id)&&!empty($typ)) { $paidabfrage = "SELECT * FROM banner WHERE typ='".$typ."' AND id='".$id."' LIMIT 1"; $paidresult = mysql_query($paidabfrage); $paidar = mysql_fetch_array($paidresult); $paidtyp = $paidar['typ']."_".$paidar['id']; $paidpruefen2 = "SELECT * FROM reload WHERE username='".mysql_real_escape_string($username)."' AND paidid='$paidtyp'"; $paidresult2 = mysql_query($paidpruefen2); $paidcount2 = mysql_num_rows($paidresult2); if($paidcount2>=1) { $frameoben = "Sie haben diesen ".$typ." schon bestätigt!"; } else { //hier der countdown und weiterleitung zum vergüten $frameoben = "<font id='stand2'>Bitte warten Sie noch <b><font id='stand'></font> Sek.</b> bis die Vergütung von ".$paidar['vergutung']." Kimelons erfolgt.</font>"; } } } } if($step == '2') { if($username == $getusername) { if(!empty($id)&&!empty($typ)) { $paidabfrage1 = "SELECT * FROM banner WHERE typ='".$typ."' AND id='".$id."' LIMIT 1"; $paidresult1 = mysql_query($paidabfrage1); $paidar1 = mysql_fetch_array($paidresult1); $paidtyp = $paidar['typ']."_".$paidar['id']; $paidpruefen6 = "SELECT * FROM reload WHERE username='".mysql_real_escape_string($username)."' AND paidid='$paidtyp'"; $paidresult6 = mysql_query($paidpruefen6); $paidcount6 = mysql_num_rows($paidresult6); if($paidcount6>=1) { $paidabfrage = "SELECT * FROM banner WHERE typ='".$typ."' AND id='".$id."' LIMIT 1"; $paidresult = mysql_query($paidabfrage); $paidar = mysql_fetch_array($paidresult); $paidtyp = $paidar['typ']."_".$paidar['id']; $paidklicks = $paidar['klicks']; $paidklicks--; $paiddabfrage = " UPDATE banner SET klicks = '$paidklicks' WHERE id ='$id' AND typ = '$typ' "; mysql_query($paiddabfrage); $paidabfrage2 = "SELECT * FROM login WHERE username='$username' LIMIT 1"; $paidresult2 = mysql_query($paidabfrage2); $paidar2 = mysql_fetch_array($paidresult2); $vergutung = $paidar['vergutung']; $paidguthaben = $paidar2['guthaben']; $paidguthaben = $vergutung+$paidguthaben; if($typ == 'banner') { $paidbannerklick = $paidar2['pbgeklickt']; $paidbannerklick++; $statistik = "pbgeklickt = '$paidbannerklick'"; } if($typ == 'link') { $paidbannerklick = $paidar2['plgeklickt']; $paidbannerklick++; $statistik = "plgeklickt = '$paidbannerklick'"; } $paiddabfrage2 = " UPDATE login SET guthaben = '$paidguthaben', $statistik WHERE username ='$username' "; mysql_query($paiddabfrage2); $tan_gen = genRandomString(16); $today = date("d.m.Y"); $kontotext = $typ."klick"; $ksql = " INSERT INTO `konto` ( `id` , `tan` , `empfanger`, `absender`, `wert`, `text`, `datum`, `operator` ) VALUES ( NULL , '$tan_gen' , '$username' , 'KSMAILER' , '".$paidar['vergutung']."', '$kontotext', '$today', 'plus' );"; $kdb_erg = mysql_query($ksql); $today1 = time(); $reloader = $paidar['reload']; $reloader = 60*60*$reloader; $reloader = $today1+$reloader; $ksql1 = " INSERT INTO `reload` ( `id` , `paidid` , `typ`, `username`, `timestamp`, `reload` ) VALUES ( NULL , '$paidtyp' , '".$paidar['typ']."' , '$username' , '$today1' , '$reloader' );"; $kdb_erg1 = mysql_query($ksql1); $frameoben = "Ihnen wurden ".$paidar['vergutung']." Kimelons gutegschrieben!"; } } else { $frameoben = "Sie haben diesen ".$typ." schon bestätigt!"; } } } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta name="copyright" content="<?php echo $COPYRIGHT;?>"> <meta name="description" content="<?php echo $META_DESCRIPTION;?>"> <meta name="keywords" content="<?php echo $META_KEYWORDS;?>"> <title><?php echo $HEADER;?></title> <script language='JavaScript' type='text/javascript'> var Zeit = <?php echo $paidar['aufenthalt'];?>; var aktiv; var istok="on"; function doTime() { if (istok=="on"){ if (Zeit >= 1) { document.getElementById('stand').innerHTML=Zeit; Zeit--; aktiv=setTimeout('doTime()', 1000); } else { clearTimeout(aktiv); document.getElementById('stand2').innerHTML='Sie werden weitergeleitet!'; window.self.location='frameoben.php?step=2&id=<?php echo $id;?>&typ=<?php echo $typ;?>&username=<?php echo $username;?>'; Zeit = 0; } } } </script> </head> <body onload="doTime();" bgcolor="orange"> <div align=center> <br> <?php echo $frameoben;?> </div> </body> </html>
WARUM geht er trotzdem weiter wenn Paidcount2 = 2 ist?
hoffentlich könnt ihr mir helfen.
mfg
EDIT:
Also durch step 1 geht er problem nur dann kommt nichts also praktisch alles leerich verzweifel wirklich sooo langsam
-
> ich verzweifel wirklich sooo langsam
Würde ich auch wenn ich mit diesem Code arbeiten müsste, darum les ich mir das gar nicht erst durch. Refactor das Ding erstmal so dass man es lesen kann, wahrscheinlich gibt der Fehler sich dann automatisch zu erkennen...
-
Da fehlt eine Art exit;
Natürlich geht er an der Stelle weiter wenn du keinen Abbruch definierst...
LG
-
oder die() verwenden
-
Danke für eure Antworten!
Hab das problem nach neuem überlegen und überdenken selbst gelöst.
die lösung war eigentlich sehr einfach...
ich musste nur die mysql verbindung noch mal ein wenig ändern weil da immer 0 stand.
Bzw die Variablen angleichen.
mfg