Thomas. Skrevet 25. januar 2009 Del Skrevet 25. januar 2009 Hei, skal oppdatere en brukertabell med et cronscript. (en og en bruker) Skal jeg bruke foreach til å oppdatere hver? Hva er den beste måten? Jeg skal oppdatere etter hvor mye en og hver bruker har hver av en ting. Lenke til kommentar
AlecTBM Skrevet 25. januar 2009 Del Skrevet 25. januar 2009 tja, er vell bare en vanlig mysql spørring i en foreach el. i et php script som kjøres av cron. Du gir oss lite å jobbe med Lenke til kommentar
Thomas. Skrevet 25. januar 2009 Forfatter Del Skrevet 25. januar 2009 (endret) tja, er vell bare en vanlig mysql spørring i en foreach el. i et php script som kjøres av cron.Du gir oss lite å jobbe med Vil dette fungere? <?php /* kobler til */ $link=mysql_connect("$host","$bruker_sql","$pass_sql"); if($link){$db=mysql_select_db("$database");} /* henter ut info */ $select=mysql_query("SELECT * FROM brukere"); $ruw=mysql_fetch_array($select); /* oppdaterer hver bruker */ foreach($ruw['nick'] as $L) { if($ruw['bank'] < 10000000 AND $ruw['bank'] > 0) { $B = $ruw['bank'] / 100 * 7.5; } else if($ruw['bank'] < 1000000000 AND $ruw['bank'] > 100000000) { $B = $ruw['bank'] / 100 * 5; } else if($x->bank > 100000000) { $B = $ruw['bank'] / 100 * 2.5; } $C = $ruw['bank'] + $B; mysql_query("UPDATE brukere SET bank = '$C' WHERE nick = '$L' LIMIT 1"); } mysql_close($link); ?> Endret 25. januar 2009 av php_user Lenke til kommentar
Jonas Skrevet 25. januar 2009 Del Skrevet 25. januar 2009 (endret) Hva med å bare prøve? Da finner du nok fort ut at det vil det ikke. Endret 25. januar 2009 av Jonas Lenke til kommentar
Thomas. Skrevet 25. januar 2009 Forfatter Del Skrevet 25. januar 2009 (endret) Da finner du nok fort ut at det vil det ikke. Hvordan skal jeg få det til å fungere da? Edit: bytta til fetch_array. Fungerer det da? Endret 25. januar 2009 av php_user Lenke til kommentar
AlecTBM Skrevet 25. januar 2009 Del Skrevet 25. januar 2009 debugging heter det, prøv og feil, fetch_array kan funke ja Lenke til kommentar
Jonas Skrevet 25. januar 2009 Del Skrevet 25. januar 2009 Hvordan skal jeg få det til å fungere da? Du kan jo begynne med å tilegne deg helt grunnleggende kunnskaper om arrays, løkker og PHP sine innebygde MySQL-funksjoner. mysql_fetch_array() fetcher èn rad fra resultatet, ikke alt sammen samtidig. Dessuten prøver du å iterere over $ruw['nick'] som om det skulle innholde en liste over alle brukernavn. Når du jobber med MySQL på denne måten, så representerer alltid de første array-elementene en rad og elementet inni disse igjen er kolonner. Slik looper du gjennom en tabell. <?php $result = mysql_query ( 'SELECT * FROM brukere' ); while ( $row = mysql_fetch_array ( $result ) ) { echo $row['nick']; } ?> Lenke til kommentar
Thomas. Skrevet 25. januar 2009 Forfatter Del Skrevet 25. januar 2009 Så da blir dette riktig? <?php /* kobler til */ $link=mysql_connect("localhost","mafiasos","P2Ejephe"); if($link){$db=mysql_select_db("mafiasos");} /* henter ut info */ $select=mysql_query("SELECT * FROM brukere"); /* oppdaterer hver bruker */ while($ruw=mysql_fetch_array($select)){ if($ruw['bank'] < 10000000 AND $ruw['bank'] > 0) { $B = $ruw['bank'] / 100 * 7.5; } else if($ruw['bank'] < 1000000000 AND $ruw['bank'] > 100000000) { $B = $ruw['bank'] / 100 * 5; } else if($x->bank > 100000000) { $B = $ruw['bank'] / 100 * 2.5; } $C = $ruw['bank'] + $B; mysql_query("UPDATE brukere SET bank = '$C' WHERE nick = '$ruw[nick]'"); } mysql_close($link); ?> Lenke til kommentar
Jonas Skrevet 25. januar 2009 Del Skrevet 25. januar 2009 Å herre da, kan du ikke bare forsøke å kjøre koden istedenfor å spørre om den fungerer? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå