Variablen versenden

Acriss

Gesperrt
Hi allerseits
ich schreibe ein kleines game
und muss dazu Variablen versenden.
Ich nutze dazu <form action="">
Für das erstemal funktioniert das auch.
Wenn ich zuder Variable aber etwas addieren möchte, addiert er IMMER null,
egal wie der Wert ist.
http://www.hp-von-deniz/fight/action

Kann mir da jemand helfen?
 
Ok
hier mal die Teile^^

action/index.php
PHP:
<form method="post" action="../kampf/index.php">

<h1 align="center">Runde 1</h1>

<input type="radio" name="chose" value="schlag"  checked="checked" >Schlagen

<input type="radio" name="chose" value="tritt">Treten

<input type="radio" name="chose" value="block">Blocken

<input type="radio" name="chose" value="springen">Springen

<input type="submit" accesskey="o" name="submit" value="Fight!">



</form>

kampf/index.php

PHP:
//Bedingunge, die $a und $b einen Wert zuweisen

echo('<form action="../action2/index.php"><input type="submit" value="Weiter"></form>');
echo("<font color='blue'>$a </font>: <font color='red'>$b</font>");

action2/index.php
PHP:
<form method="post" action="../kampf2/index.php">
<h1 align="center">Runde 2</h1>

<input type="radio" name="chose" value="schlag"  checked="checked" >Schlagen

<input type="radio" name="chose" value="tritt">Treten

<input type="radio" name="chose" value="block">Blocken

<input type="radio" name="chose" value="springen">Springen

<input type="submit" accesskey="o" name="submit" value="Fight!">

</form>

kampf2/index.php
PHP:
//bedingungen die $c und $d einen Wert zuweisen

$e = $a+$c;
$f = $b+$d;
echo('<form action="../action3/index.php"><input type="submit" value="Weiter"></form>');
echo("<h3><font color='blue'>$e </font>: <font color='red'>$f</font></h3>");

Ja
und da hörts dann auf^^
dann isses immer
$e = 0+$c;
bzw
$f = 0+$d;
Und das ist nicht im Sinne des Erfinders.
Eigentlich sollte halt der alte Wert von $a ($b) benutzt werden.

mfg
 
ja
heir mal ein kleines beispiel:
PHP:
elseif ($comp == 3 && $_POST['chose'] == tritt)
{
echo("Der Computer blockt. Du trittst.");
$a=1;
$b=0;
}
 
also
der Auszug bringt sehr wohl was
das sind um die 16 elseif anweisungen
und die alle zu psoten bringt nix.
Das erste mal funktioniert ja auch alles.
Nur beim zweiten mal nicht -.-.
Das heißt:
Selbst wenn bei, ersten 1:0 steht,
wird danach 0:0 angezeigt (bsp)
ich zeig trotzdem mal alles^^



PHP:
<?php
$comp = rand(1,4);



// Wenn Computer schlägt
if ($comp == 1 && $_POST['chose'] == schlag)
{
echo("Der Computer schl&auml;gt. Du schl&auml;gst.");
$a=1;
$b=1;
}
elseif ($comp == 1 && $_POST['chose'] == tritt)
{
echo("Der Computer schl&auml;gt. Du trittst.");
$a=1;
$b=1;
}
elseif ($comp == 1 && $_POST['chose'] == block)
{
echo("Der Computer schl&auml;gt. Du Blockst.");
$a=0;
$b=0;
}
elseif ($comp == 1 && $_POST['chose'] == springen)
{
echo("Der Computer schl&auml;gt. Du springst.");
$a=0;
$b=1;
}
//Wenn Computer tritt

elseif ($comp == 2 && $_POST['chose'] == schlag)
{
echo("Der Computer tritt. Du schl&auml;gst.");
$a=1;
$b=1;
}
elseif ($comp == 2 && $_POST['chose'] == tritt)
{
echo("Der Computer tritt. Du trittst.");
$a=1;
$b=1;
}
elseif ($comp == 2 && $_POST['chose'] == block)
{
echo("Der Computer tritt. Du Blockst.");
$a=0;
$b=1;
}
elseif ($comp == 2 && $_POST['chose'] == springen)
{
echo("Der Computer tritt. Du springst.");
$a=0;
$b=0;
}

//Der Computer blockt:


elseif ($comp == 3 && $_POST['chose'] == schlag)
{
echo("Der Computer blockt. Du schl&auml;gst.");
$a=0;
$b=0;
}
elseif ($comp == 3 && $_POST['chose'] == tritt)
{
echo("Der Computer blockt. Du trittst.");
$a=1;
$b=0;
}
elseif ($comp == 3 && $_POST['chose'] == block)
{
echo("Der Computer blockt. Du Blockst.");
$a=0;
$b=0;
}
elseif ($comp == 3 && $_POST['chose'] == springen)
{
echo("Der Computer blockt. Du springst.");
$a=0;
$b=0;
}

//Der Computer Springt
elseif ($comp == 4 && $_POST['chose'] == schlag)
{
echo("Der Computer springt. Du schl&auml;gst.");
$a=1;
$b=0;
}
elseif ($comp == 4 && $_POST['chose'] == tritt)
{
echo("Der Computer springt. Du trittst.");
$a=0;
$b=0;
}
elseif ($comp == 4 && $_POST['chose'] == block)
{
echo("Der Computer springt. Du Blockst.");
$a=0;
$b=0;
}
elseif ($comp == 4 && $_POST['chose'] == springen)
{
echo("Der Computer springt. Du springst.");
$a=0;
$b=0;
}


//debugging

elseif ($_POST['chose'] == "")
{
echo('Fehler: Keine angabe -.-');
}
$a = $a;
$b = $b;
echo('<form action="../action2/index.php"><input type="submit" value="Weiter"></form>');
echo("<h3><font color='blue'>$a </font>: <font color='red'>$b</font></h3>");


?>



PHP:
<?php
$comp = rand(1,4);



// Wenn Computer schlägt
if ($comp == 1 && $_POST['chose'] == schlag)
{
echo("Der Computer schl&auml;gt. Du schl&auml;gst.");
$c=1;
$d=1;
}
elseif ($comp == 1 && $_POST['chose'] == tritt)
{
echo("Der Computer schl&auml;gt. Du trittst.");
$c=1;
$d=1;
}
elseif ($comp == 1 && $_POST['chose'] == block)
{
echo("Der Computer schl&auml;gt. Du Blockst.");
$c=0;
$d=0;
}
elseif ($comp == 1 && $_POST['chose'] == springen)
{
echo("Der Computer schl&auml;gt. Du springst.");
$c=0;
$d=1;
}
//Wenn Computer tritt

elseif ($comp == 2 && $_POST['chose'] == schlag)
{
echo("Der Computer tritt. Du schl&auml;gst.");
$c=1;
$d=1;
}
elseif ($comp == 2 && $_POST['chose'] == tritt)
{
echo("Der Computer tritt. Du trittst.");
$c=1;
$d=1;
}
elseif ($comp == 2 && $_POST['chose'] == block)
{
echo("Der Computer tritt. Du Blockst.");
$c=0;
$d=1;
}
elseif ($comp == 2 && $_POST['chose'] == springen)
{
echo("Der Computer tritt. Du springst.");
$c=0;
$d=0;
}

//Der Computer blockt:


elseif ($comp == 3 && $_POST['chose'] == schlag)
{
echo("Der Computer blockt. Du schl&auml;gst.");
$c=0;
$d=0;
}
elseif ($comp == 3 && $_POST['chose'] == tritt)
{
echo("Der Computer blockt. Du trittst.");
$c=1;
$d=0;
}
elseif ($comp == 3 && $_POST['chose'] == block)
{
echo("Der Computer blockt. Du Blockst.");
$c=0;
$d=0;
}
elseif ($comp == 3 && $_POST['chose'] == springen)
{
echo("Der Computer blockt. Du springst.");
$c=0;
$d=0;
}

//Der Computer Springt
elseif ($comp == 4 && $_POST['chose'] == schlag)
{
echo("Der Computer springt. Du schl&auml;gst.");
$c=1;
$d=0;
}
elseif ($comp == 4 && $_POST['chose'] == tritt)
{
echo("Der Computer springt. Du trittst.");
$c=0;
$d=0;
}
elseif ($comp == 4 && $_POST['chose'] == block)
{
echo("Der Computer springt. Du Blockst.");
$c=0;
$d=0;
}
elseif ($comp == 4 && $_POST['chose'] == springen)
{
echo("Der Computer springt. Du springst.");
$c=0;
$d=0;
}


//debugging

elseif ($_POST['chose'] == "")
{
echo('Fehler: Keine angabe -.-');
}
echo("$a3");
$e = $a+$c;
$f = $b+$d;
echo('<form action="../action3/index.php"><input type="submit" value="Weiter"></form>');
echo("<h3><font color='blue'>$e </font>: <font color='red'>$f</font></h3>");
?>
 
Was bringt dies denn?
PHP:
$a = $a;
$b = $b;

Ja, dies ist ja auch klar, weil du die $a und $b gar nicht der anderen Seite übergibst. du müsstest die Variablen entweder per Session übergeben oder durch ein verstecktes Feld.
 
und wie?
mit sessions habe ich mich noch nicht beschäftigt.
Köntest du mir vllt die möglichkeit mit dem versteckten Feld zeigen?
 
PHP:
echo('<form action="../action2/index.php"><input type="hidden" value='."$a".' name="a" /><input type="hidden" value='."$b".' name="b" /><input type="submit" value="Weiter"></form>');

Beim zusammen rechnen müsstest du dann natürlich dies machen

PHP:
$e = $_POST[a]+$c;
$f = $_POST[b]+$d;

usw.
 
Zuletzt bearbeitet:
Zurück