Problema con un programma

  • Creatore Discussione Creatore Discussione Samu
  • Data di inizio Data di inizio

Samu

Nuovo Utente
21 Mar 2008
13
0
0
yourmusicworld.forumfree.net
Ho un problema con questo script.. uso easy php ed una volta che finisco il gioco e clicco su gioca ancora, mi esce una pagina vuota..

Come posso fare per fare in modo che mi si riavvii una nuova partita?

Ecco lo script

Codice:
<?php


# La lista delle parole da indovinare (ATTENZIONE: ricordarsi di lasciare un invio tra una parola e lìaltra)
$list = "PROGRAMMARE
GIOCHI IN PHP
ACTIVE SERVICE PAGE
METALINGUAGGIO
DISCRETIZZARE
REALLY SIMPLE SYNDACATION
ONION SKIN
SISTEMA OPERATIVO
UBUNTU
BILL GATES
MICROSOFT
RETI DI PETRI
MULTIPROCESSORE
MULTIPROGRAMMAZIONE
SISTEMISTA
POWER POINT
WINDOWS
LINUX
ZIP FILE
MONITOR LCD
MYSQL DATABASE
INIZIALIZAZZIONI
FAQ - FREQUENTLY ASKED QUESTIONS
DEBUGGING";


# Il seguente elenco di lettere è predisposto per l'uso di lingue latine'
$alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

#   Lista addizzionale di lettere, ATTENZIONE: a come si immettono i caratteri speciali!!
$additional_letters = " -.,;!?%&0123456789";

#========= do not edit below here ======================================================


echo<<<endHTML
<HTML><HEAD><TITLE>L'impiccato || CS Script </TITLE>
<META NAME="DESCRIPTION" CONTENT="Il gioco dell'impiccato in PHP">
<meta content="text/html; charset=windows-1252" http-equiv=content-type>
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css">
<!--
        H1                {font-family: Verdana, Courier, monospace; font-size: 18pt;}
        P                {font-family: Verdana, Arial, sans-serif; font-size: 12pt;}
        A:link        {COLOR: #0000FF; TEXT-DECORATION: underline;}
        A:visited        {COLOR: #0000FF; TEXT-DECORATION: underline;}
        A:active        {COLOR: #0000FF; TEXT-DECORATION: underline;}
        A:hover        {COLOR: #FF0000; TEXT-DECORATION: underline;}
-->
</style>
</HEAD>

<BODY bgColor="POWDERBLUE" link="navy" vlink="navy" alink="navy">
<DIV ALIGN="center">
endHTML;

$len_alpha = strlen($alpha);

if(isset($_GET["n"])) $n=$_GET["n"];
if(isset($_GET["letters"])) $letters=$_GET["letters"];
if(!isset($letters)) $letters="";

if(isset($PHP_SELF)) $self=$PHP_SELF;
else $self=$_SERVER["PHP_SELF"];

$links="";



$max=6;    # numero massimo di tentativi
# error_reporting(0);
$list = strtoupper($list);
$words = explode("\n",$list);
srand ((double)microtime()*1000000);
$all_letters=$letters.$additional_letters;
$wrong = 0;

echo "<P><B>Gioca all'Impiccato con PHP</B> &nbsp;<BR>\n";

if (!isset($n)) { $n = rand(1,count($words)) - 1; }
$word_line="";
$word = trim($words[$n]);
$done = 1;
for ($x=0; $x < strlen($word); $x++)
{
  if (strstr($all_letters, $word[$x]))
  {
    if ($word[$x]==" ") $word_line.="&nbsp; "; else $word_line.=$word[$x];
  }
  else { $word_line.="_<font size=1>&nbsp;</font>"; $done = 0; }
}

if (!$done)
{

  for ($c=0; $c<$len_alpha; $c++)
  {
    if (strstr($letters, $alpha[$c]))
    {
      if (strstr($words[$n], $alpha[$c])) {$links .= "\n<B>$alpha[$c]</B> "; }
      else { $links .= "\n<FONT color=\"red\">$alpha[$c] </font>"; $wrong++; }
    }
    else
    { $links .= "\n<A HREF=\"$self?letters=$alpha[$c]$letters&n=$n\">$alpha[$c]</A> "; }
  }
  $nwrong=$wrong; if ($nwrong>6) $nwrong=6;
  //qui potete inserire il nome che avete dato alle immagini
  echo "\n<p><BR>\n<IMG SRC=\"impiccato_$nwrong.gif\" ALIGN=\"MIDDLE\" BORDER=0 WIDTH=100 HEIGHT=100 ALT=\"Sbagliate: $wrong su: $max\">\n";

  if ($wrong >= $max)
  {
    $n++;
    if ($n>(count($words)-1)) $n=0;
    echo "<BR><BR><H1><font size=5>\n$word_line</font></H1>\n";
    echo "<p><BR><FONT color=\"red\"><BIG>Mi dispiace hai perso!!</BIG></FONT><BR><BR>";
    if (strstr($word, " ")) $term="frase"; else $term="parola";
    echo "La $term era \"<B>$word</B>\"<BR><BR>\n";
    echo "<A HREF=$self?n=$n>Gioca ancora </A>\n\n";
  }
  else
  {
    echo " &nbsp; Ti rimangono: <B>".($max-$wrong)."</B> possibilità<BR>\n";
    echo "<H1><font size=5>\n$word_line</font></H1>\n";
    echo "<P><BR>Scegli una lettera:<BR><BR>\n";
    echo "$links\n";
  }
}
else
{
  $n++;        # get next word
  if ($n>(count($words)-1)) $n=0;
  echo "<BR><BR><H1><font size=5>\n$word_line</font></H1>\n";
  echo "<P><BR><BR><B>Complimenti hai vinto!! &nbsp;Sei il vincitore!!!</B><BR><BR><BR>\n";
  echo "<A HREF=$self?n=$n>Gioca ancora </A>\n\n";
}

echo<<<endHTML

</DIV></BODY></HTML>

endHTML;
?>
 
Mettilo all'inizio, se non stampa nulla quando clicchi su "gioca ancora" vuol dire che la variabile è vuota; è probabile quindi che in problema si trovi lì.
 

Discussioni simili