Oppure

Loading
15/12/07 20:10
Aly
per prima cosa :

CIAO A TUTTI...


cercando in internet ho trovato questo sito e ho pensato di chiedere aiuto qua...dato che non mi riesce a fare una cosina...

devo far in modo che in una chat mi appaiano dei numeri casuali in seguenza.

il funzionamento è questo... una persona scrive un numero e quando lo invia vengono fuori tot numeri casuali tra 1e10 quant'è il numero da lui scritto

esemplietto...uno scrive 3 e in chat gli saltano fuori 3 numeri a caso tra 1 e 10.

io ho fatto questo :

    if ((substr($Msg, 0, 1) == "$";) && ($Tipo == "";)) {
     if (strtoupper(substr($Msg, 1, 4)) == "DADI";) {
     $maxnum = min(floor(abs(0 + substr(trim($Msg), 5))), 1000);
     mt_srand((double)microtime()*1000000);
     $num = mt_rand(1, 10);
            $Tipo = "Y";
            $Msg = $Login." tira $num/10";
            $Msg = htmlspecialchars($Msg);

teoricamente cosi mi ricava il $maxnum che è il numero scritto in chat e che dovrebbe indicare la quantità di numeri e mi mette in chat un numero a caso tra 1 e 10....
ma non so come dire al codice di far apparire tot numeri quanto è maxnum...


spero tanto che mi possiate dare una mano
grazie anticipate
aaa
19/12/07 23:49
bangirasu
Non capisco bene il tuo problema ma non basta fare una cosa del genere:

$maxnumber=10;

srand(time());

for($i=0;$i<$maxnumber;$i++){
	echo rand()."\n";
	
}


volendo invece di usare time() che restituisce i secondi puoi usare microtime() che restituisce microsecondi e secondi...
aaa
22/12/07 11:37
Aly
si cosi teoricamente funziona, la cosa che non va bene è che mi manda i numeri a caso nell'input della chat e non nella chat stessa.. il problema è che non ho idea di come fare a dirgli di metterli in chat...

dovrebbe essere la variabile $Msg che li manda in chat... infatti nel codice che devo modificare l'inserimento in chat è scritto cosi :

$Msg = $Login." tira $num/$maxnum";

aaa
22/12/07 19:55
bangirasu
Non avendo a disposizione il codice sorgente ti posso dire ben poco...
quei numeri casuali li puoi salvare in un array

$maxnumber=10; 
$rand_array=array();
srand(time()); 

for($i=0;$i<$maxnumber;$i++){ 
    $rand_array[]=rand(); 
     
}


poi presumo ke ci sarà una funzione ke stampa i messaggi (per esempio print_msg(string)) e a quel punto ti basterebbe fare

foreach($rand_array as $cur){
  print_msg($cur);
}


oppure se ti serve stamparli tutti su uma riga

print_msg(implode(" - ", $rand_array));


Cmq come dicevo prima senza avere il codice non saprei precisamente come aiutarti
aaa