PHP-Walka tekstowa

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
domat1
Posty: 6
Rejestracja: ndz kwie 20, 2008 2:06 pm

PHP-Walka tekstowa

Post autor: domat1 »

[php]
<?php session_start(); //Start sesji
$_SESSION['SZC']='10'; //Życie szczura
$_SESSION['ATCP']=rand(1, 3); //Atak gracza
$_SESSION['ATCS']=rand(0, 2); //Atak szczura
//Poniżej zwykłe rozpoczęcie htmla potrzebne pozniej ?>
<html>
<head>
<title>Walka ze szczurem</title>
</head>
<body>
<?php
If($_SESSION['SZC'] >= 0); //Jesli szczur ma 0 zycia lub mniej
{
echo("Wygrałes walkę ze szczurem");
$_SESSION['EXP'] += 3; //Dodaje expa po wygranej ze szczurem
?>
<form action="RPG3.php">
<input type="submit" value="Powrot">
</form>
<?php //Przycisk powrot ^^
}
elseif($_SESSION['HP'] >= 0); //Jesli życie gracza ma 0 lub mniej
{
echo("Przegrałes walkę ze szczurem");
$_SESSION['EXP'] = 0; //Kara za przegraną ;p
?>
<form action="RPG3.php">
<input type="submit" value="Powrot">
</form>
<?php //Przycisk powrot ^^
}
else //Jesli tamte warunki nie są spełnione to walka trwa nadal
{
echo("Zaatakowałes szczura za");
echo $_SESSION['ATCP']; //Ile gracz odjął szczurowi życia(powtarza sie :( )
$_SESSION['SZC'] -= $_SESSION['ATCP']; //Odejmuje
echo("Szczur zaatakował cię za")
echo $_SESSION['ATCS']; //Ile szczur odjął graczowi życia(powtarza sie :( )
$_SESSION['HP'] -= $_SESSION['ATCS']; //Odejmuje
//Skopiowalem to jeszcze okolo dwadziescia razy ale nie bede tu
//dwadzieścia razy kopiowal bo skrypt bylby za wielki
[/php]
SZC- życie szczura czyli 10
HP- Życie gracza(Jest ustawione w innym skrypcie)
ATCP-Atak gracza
ATCS-Atak szczura
W instrukcji If chce uzyskac cos takiego:
Jeśli szczur ma 0 życia to wyświetl Wygrałeś ze szczurem i dodaj do expa 3 Wyswietl przycisk powrot
Albo jesli gracz ma zero życia to wyswietl Przegrałes walke ze szczurem i ustaw exp na zero i Wyswietl przycisk powrot
Albo (walka dalej trwa)
Niestety pokazuje mi się błąd:
Parse error: syntax error, unexpected T_ELSEIF in C:\Serwer\Strony\RPG2.php on line 22
Nie wiem czy kod bedzie dobrze działał ani nie wiem jak go poprawic.Prosze o pomoc!
Anorax
Nowy
Nowy
Posty: 42
Rejestracja: pn maja 07, 2007 6:13 pm
Kontakt:

Re: PHP-Walka tekstowa

Post autor: Anorax »

Tutaj masz błąd:
[php]<?php
}
elseif($_SESSION['HP'] >= 0); //Jesli życie gracza ma 0 lub mniej
{
?>[/php]

Na końcu nie powinno byc średnika.
domat1
Posty: 6
Rejestracja: ndz kwie 20, 2008 2:06 pm

Re: PHP-Walka tekstowa

Post autor: domat1 »

Dalej pojawia się ten sam błąd
Anorax
Nowy
Nowy
Posty: 42
Rejestracja: pn maja 07, 2007 6:13 pm
Kontakt:

Re: PHP-Walka tekstowa

Post autor: Anorax »

Za pierwszym if'em też jest średnik.

Dla przypomnienia - budowa instrukcji warunkowej if:

if (warunek) {
instrukcja;
} elseif (warunek) {
instrukcja;
} else {
instruckaj;
}

jak widzisz po warunku nie ma średnika, jest natomiast w instrukcji ;-)
domat1
Posty: 6
Rejestracja: ndz kwie 20, 2008 2:06 pm

Re: PHP-Walka tekstowa

Post autor: domat1 »

dzięki już działa tylko jak napisac ze kiedy jeden z warunkow zostanie spelniony to koniec skryptu?
Anorax
Nowy
Nowy
Posty: 42
Rejestracja: pn maja 07, 2007 6:13 pm
Kontakt:

Re: PHP-Walka tekstowa

Post autor: Anorax »

die() ? xP
ODPOWIEDZ