Reacties op het script Het "grote" dobbel-spel
|
Gepost op: 21 mei 2006 - 19:06 |
|
|
|
JS gevorderde
|
<?
$start_pc = 0;
$score_pc = 0;
while($start_pc!=$num){
$start_pc++;
$worp = rand(1,6);
$score_pc = $score_pc + $worp;
}
?>
<? $start_pc = 0; $score_pc = 0; while($start_pc!=$num){ $start_pc++; $score_pc = $score_pc + $worp; } ?>
dit stukje code kan je verbeteren:
<?
$start_pc = 0;
$score_pc = 0;
while($start_pc<$num){ // != => < is leesbaarder
$score_pc += rand(1,6); // $getal = $getal + ?; => $getal += ?;
$start_pc++; // dit moet eigenlijk op het laatst gedaan worden
}
?>
<? $start_pc = 0; $score_pc = 0; while($start_pc<$num){ // != => < is leesbaarder $score_pc += rand(1,6); // $getal = $getal + ?; => $getal += ?; $start_pc++; // dit moet eigenlijk op het laatst gedaan worden } ?>
|
|
|
|
Gepost op: 21 mei 2006 - 21:03 |
|
|
|
PHP gevorderde
|
aangepast op beide stukken.
zowel pc als player |
|
|
|
Gepost op: 22 mei 2006 - 20:19 |
|
|
|
PHP expert
|
Een kleine 'logische' verbetering
#aantal keer gegooid
$num = $_POST['num'];
#computer value
$start_pc = 0;
$score_pc = 0;
while($start_pc<$num){
$score_pc += rand(1,6);
$start_pc++;
}
#jouw score berekenen
$start_player = 0;
$score_player = 0;
while($start_player<$num){
$score_player += rand(1,6);
$start_player++;
}
#aantal keer gegooid $num = $_POST['num']; #computer value $start_pc = 0; $score_pc = 0; while($start_pc<$num){ $start_pc++; } #jouw score berekenen $start_player = 0; $score_player = 0; while($start_player<$num){ $score_player += rand(1,6); $start_player++; }
==
#aantal keer gegooid
$start = 0;
while($start++ < $_POST['num']){
$score_pc += rand(1,6);
$score_player += rand(1,6);
}
#aantal keer gegooid $start = 0; while($start++ < $_POST['num']){ $score_player += rand(1,6); }
Ik vind het overigens leuk dat je allerlei van zo'n spelletjes post! |
|
|
|
Gepost op: 22 mei 2006 - 23:09 |
|
|
|
PHP gevorderde
|
achjaa, tuurlijk, helemaal niet aan gedacht dat dat ook in 1 keer kon
ik had niets te doen |
|
|
|
Gepost op: 23 mei 2006 - 18:25 |
|
|
|
JS gevorderde
|
idd, 'k dacht dat korter kon, maar ik zag het zelf niet direct.
'k Zit nu aan iets anders te denken. Het veldje $_POST['num'] kan aangepast worden naar zoveel dat je zelf wilt. Nu is dat niet zo erg bij een klein getal. Maar beeld je een keer in dat iemand 10.000 keer laat lopen. Dan gaat dit scriptje veel resources vragen enzo, waardoor je een DDos aanval kan uitlokken.
Ik zou er dus persoonlijk nog een check insteken, dat het niet meer dan 10 is. |
|
|
|
Gepost op: 23 mei 2006 - 18:36 |
|
|
|
JS gevorderde
|
ook snap ik nog iets niet
<?
if($score_pc > $score_player){
echo '<font color="red">Je hebt verloren</font>';
echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>';
}
elseif($score_pc < $score_player){
echo '<font color="green">Je hebt gewonnen,<br />Gefeliciteerd</font>';
echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>';
}
elseif($score_pc == $score_player){
echo '<font color="orange">Het was een gelijkspel,<br />Niemand heeft gewonnen</font>';
echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>';
}
else{
echo '<font color="red">Door een fout kon er niets berekend worden</font>';
}
?>
<? if($score_pc > $score_player){ echo '<font color="red">Je hebt verloren</font>'; echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>'; } elseif($score_pc < $score_player){ echo '<font color="green">Je hebt gewonnen,<br />Gefeliciteerd</font>'; echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>'; } elseif($score_pc == $score_player){ echo '<font color="orange">Het was een gelijkspel,<br />Niemand heeft gewonnen</font>'; echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>'; } else{ echo '<font color="red">Door een fout kon er niets berekend worden</font>'; } ?>
wat kunnen twee getallen anders zijn dan gelijk, groter of kleiner dan elkaar. Ook kan je de code dan aanpassen, zodat het korter wordt:
<?
if($score_pc > $score_player){
echo '<font color="red">Je hebt verloren</font>';
}
elseif($score_pc < $score_player){
echo '<font color="green">Je hebt gewonnen,<br />Gefeliciteerd</font>';
}
elseif($score_pc == $score_player){
echo '<font color="orange">Het was een gelijkspel,<br />Niemand heeft gewonnen</font>';
}
echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>';
?>
<? if($score_pc > $score_player){ echo '<font color="red">Je hebt verloren</font>'; } elseif($score_pc < $score_player){ echo '<font color="green">Je hebt gewonnen,<br />Gefeliciteerd</font>'; } elseif($score_pc == $score_player){ echo '<font color="orange">Het was een gelijkspel,<br />Niemand heeft gewonnen</font>'; } echo '<br /><table><tr><td align="right">Jouw score:</td><td>'.$score_player.'</td></tr><tr><td align="right" width="50%">PC score:</td><td>'.$score_pc.'</td></tr></table>'; ?>
|
|
|
|
Gepost op: 23 mei 2006 - 19:14 |
|
|
|
PHP gevorderde
|
het is allebei aangepast, de controle op >10 en de kortere code. |
|
|
|
Gepost op: 23 mei 2006 - 20:23 |
|
|
|
JS gevorderde
|
ik zat eigenlijk aan iets anders aan het denken:
<?
if(isset($_POST['num']) && is_numeric($_POST['num']) && 0<$_POST['num'] <= 10){
<? if(isset($_POST['num']) && is_numeric($_POST['num']) && 0<$_POST['num'] <= 10){
ipv
<?
if(isset($_GET['dobbel'])and($_GET['dobbel']=="action")){
<? if(isset($_GET['dobbel'])and ($_GET['dobbel']=="action")){
dan is die action ook niet meer nodig, enzo |
|
|
|
Gepost op: 23 mei 2006 - 20:30 |
|
|
|
PHP gevorderde
|
ik heb hem nu iets anders, jou manier gaf ie een error.
<?php
if(isset($_POST['num']) && is_numeric($_POST['num']) && 0<$_POST['num'] <= 10){
?>
<?php if(isset($_POST['num']) && is_numeric($_POST['num']) && 0<$_POST['num'] <= 10){ ?>
===>
<?php
if(isset($_POST['num']) && is_numeric($_POST['num']) && $_POST['num'] <= 10 && 0<$_POST['num']){
?>
<?php if(isset($_POST['num']) && is_numeric($_POST['num']) && $_POST['num'] <= 10 && 0<$_POST['num']){ ?>
maar die dobbel en action zijn er nu uit |
|
|
|
Gepost op: 16 oktober 2008 - 18:26 |
|
|
|
Nieuw lid
|
|
|
Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom. |
|
|
|