PHP Zufallszahl beibehalten

[grueni]

Lt. Commander
Registriert
Okt. 2008
Beiträge
1.293
Nabend :)

Ich soll folgende Aufgabe in IV realisieren:

Es wird eine zufällige Zahl generiert. Die Spieler nennt eine Zahl wenn diese Zahl der zufälligen Zahl entspricht hat der Spieler gewonnen. Wenn die genannte Zahl nicht der zufälligen Zahl entspricht, bekommt der Spieler eine Ausgabe ob die Zahl größer und kleiner ist.

Nun hab ich eine Frage: Wenn ich die erzeugte Zufallszahl beibehalten will,sprich der User bekommt noch eine Chance um die Zahl zu erraten, muss ich dann zwingend mit einer Session arbeiten oder gibts auch eine einfachere Lösung, dass nicht bei einer erneuten Eingabe die Random Zahl neu erzeugt wird ?

Vielen Dank für eure Hilfe :)
[grueni]
 
Lade sie dich einfach in eine Variabele

Einfach vor der Eingabe des Users:
Code:
$random = rand(1,150);
 
ich würde gleich mit sessions arbeiten und die hidden-felder gleich von anfang an für einen guten programmierstil vermeiden

hidden felder sind nie 100% vor benutzereingaben geschützt und man müsste sie beim empfang zusätzlich escapen
so kann ich z.B. mit firebug diesen inhalt beliebig ändern und absenden

sessions sind im prinzip auch nicht allzuschwer
hier ein kleines tut
http://www.php-einfach.de/php-tutorial/php-sessions.php
 
Zuletzt bearbeitet von einem Moderator:
die Lösung von Blitzmerker gefällt mir :lol:

@achim89: Ja klar sollte man auch, aber da ich mit Programmieren sonst nichts am Hut habe, ist mir das eigentlich egal, so schlimm es auch ist :D Hauptsache ne halbwegs gescheite Note:)
@S.D.W: Ja so hab ich das ja;) Aber er läd auch immer eine neue Zahl bei einer neuen Eingabe ;)
Ich werds gleich mal rumprobieren :)
 
Ja, vermutlich weil die rand-funktion immer neu geladen wird ;) darum so weit nach oben, dass es sich bei einer eingabe nicht aktualisiert =P

Oder über Umwege:

Code:
if(!isset($random){$random = rand(1, 150);}
 
Zuletzt bearbeitet:
:D oki, spruch so hoch wie es geht :p
Oki ich probier mal ein wenig rum, meine jetzigen Versuche mit While+if sind gescheitert:freak:
 
note?
beginnst du eine ausbildung zum fachinformatiker?

dass er immerwieder eine note neu anlegt, liegt höchstwahrscheinlich daran, dass wenn du dein script erneut aufrufst, diese $random variable auch überschrieben wird

es empfiehlt sich eine if-anweisung

Code:
if(!isset($_SESSION["random"]))
{
     $random = rand(1, 100);
}
else
{
     $random = $_SESSION["random"];
}

oder

// wenn noch keine zahl existiert
if($_POST["hidden_feld"] == "")
{
     // generiere eine
     $random = rand(1, 100);
}
// ansonsten
else
{
     // verwende zuvor ermittelte zahl
     $random = $_POST["hidden_feld"];
}
 
Nein dummer Weise statt Wirtschaftsgymnasium Technik genommen ;)
Danke ich schaus mir ehm an :)
Ergänzung ()

Okay nix wollte :freak: Für heut ist Schluss ;) Ich poste morgen sonst mal ob ich es geschafft hab bzw. wo es noch harkt ;)
 

Ähnliche Themen

Zurück
Oben