Komplizierte funktion: Variable in der Db wird immer um 2 statt um 1 erhöht...
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
-
function training ($buy,$pic,$header,$text,$geld,$mal,$id) { $query_store = mysql_query('SELECT * FROM training WHERE id="'.$_SESSION['user_id'].'"') or die (mysql_error()); $fetch_store = mysql_fetch_array($query_store); $query_user = mysql_query('SELECT * FROM user WHERE id="'.$_SESSION['user_id'].'"') or die (mysql_error()); $fetch_user = mysql_fetch_array($query_user); ?> <tr><td colspan="3" class="tableheader"><?=$header ?></td> </tr> <tr><td width="49"><img src="<?=$pic ?>" alt=""/></td> <td width="407"><?=$text ?></td> <td width="88"><center> <?php if($fetch_user['points']==0) { $time = date('U')+$mal; } else { $time = round((date('U')+$fetch_user['points']/100)*$mal,1); } if($_GET['m']=='submit') { mysql_query('INSERT INTO time (time,id) VALUES("'.$time.'","'.$_SESSION['user_id'].'")') or die (mysql_error()); } if($_GET['action']=='delete') { mysql_query('DELETE FROM time WHERE id="'.$_SESSION['user_id'].'"') or die (mysql_error()); } $query = mysql_query('SELECT time,id FROM time WHERE id="'.$_SESSION['user_id'].'"') or die (mysql_error()); $fetch = mysql_fetch_array($query); if(mysql_num_rows($query)==0) { if($fetch_user['money'] < $geld OR $fetch_user['money'] == 0) { echo '<span style="color:red;">Trainieren</span>'; } else { echo '<span style="color:#00ff00;"><a href="index.php?menu=training&m=submit">Trainieren</a></span>'; } } else { echo " <script type=\"text/Javascript\"> var intObjs=0; function frmt(intNbr) { return (intNbr<10 ? '0' : '') + Math.floor(intNbr) +':'; } function countdown(intSec,seite) { if(document.getElementById) { try { var args = countdown.arguments; var tage = frmt(intSec/86400).replace(/^(00:)+|(:$)/g,''); var stunden = frmt( (intSec%86400) / 3600 ); var minuten = frmt( (intSec%3600) / 60 ); var sekunden = frmt(intSec%60).replace(/^(:)+|(:$)/g,''); var disp = (tage+stunden+minuten+sekunden); if(args.length > 2) document.getElementById('count_'+strTgt).firstChild.data = disp; else { strCmd = (args.length>1) ? args[1] : ''; // wenn gr??er 1, strTgt = intObjs; document.write('<span id=\"count_'+ intObjs++ +'\">'+ disp +'</span>'); } if (intSec > 0) { window.setTimeout('countdown('+(intSec-1)+','+strTgt+',\''+strCmd+'\')',1000); } else { window.location.href='index.php?menu=training&action=delete&id=".$id."'; eval(strCmd); } } catch(e){} } } countdown(".($fetch[time]-date('U')).") </script> "; } if($_GET['id']==$id) { $minusmoney = $fetch_user['money']-$geld; $add = $fetch_store[$buy]+1; mysql_query('UPDATE training SET '.$buy.'="'.$add.'" WHERE id="'.$_SESSION['user_id'].'"') or die (mysql_error()); mysql_query('UPDATE user SET money="'.$minusmoney.'" WHERE id="'.$_SESSION['user_id'].'"') or die (mysql_error()); } ?> </center></td></tr> <tr><td>Kosten:</td><td><?=$geld ?>$(<?=rest($fetch_user['money'],$geld ) ?>)</td><td>Vorhanden:<?=echotraining($buy) ?></td></tr> <? }
Ein wenig lang, aber ich brauche sie oft, darum auch die funktion.
Ich hab mir das ganze schon 100 mal durchgelesen und kapier einfach nciht, warum es immer um 2 statt um 1 erh?ht wird...
Sieht eine/r von euch vielleicht zuf?llig einen Fehler? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
newwarrior schrieb:
Mach mal hinter deine ganzen Updates ein LIMIT 1.
Also ich meine es so:
SELECT * FROM training WHERE id=''.$_SESSION['user_id'].'' LIMIT 1') or die (mysql_error());
nope.
Wieder das gleiche Spiel. -
Dann mach mal bei SELECT statt * die genauen Zellen dir du brauchst, das kann auch eine Fehlerquelle sein.
-
newwarrior schrieb:
Dann mach mal bei SELECT statt * die genauen Zellen dir du brauchst, das kann auch eine Fehlerquelle sein.
nothing. Geht immernoch nicht. -
Wei? denn niemand von euch was?
Ich hab jetzt entdeckt, dass ich ein schwerwiegendes Berechnungsproblem hatte, allerdings wird immernoch um 2 erh?ht ;-( -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage