Re: Need help
Posted: Fri Feb 09, 2018 2:14 am
Hello,
I need help. I am learning the php, and i am trying to create a hangman game. I have got 2 problems.
1. In the array every accented letter take 2 slots.
2. After the submission, the page does not change.
My code:
akasztofa. php:
I need help. I am learning the php, and i am trying to create a hangman game. I have got 2 problems.
1. In the array every accented letter take 2 slots.
2. After the submission, the page does not change.
My code:
akasztofa. php:
Code: Select all
<!DOCTYPE html>
<?php header ('Content-type: text/html; charset=utf-8'); ?>
<html> <head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />
<style>
.tokkozepre{ /*Teljesen középre helyezés */
position: absolute; top: 50%; left: 50%;
transform: translate(-50%, -50%);
}
</style> </head>
<body>
<?php
$generalSzavak=array("macska", "kerékpár", "folyosó", "tenisz", "nyelőcső", "ember", "citrus", "narancslé", "gyöngytyúk", "köszörü", "aknaszedő", "alábbhagy", "áhítat");
$betuk = ['a', 'á', 'b', 'c', 'd', 'e', 'é', 'f', 'g', 'h', 'i', 'í', 'j', 'k', 'l', 'm', 'n', 'o', 'ó', 'ö', 'ő', 'p', 'q', 'r', 's', 't',' u', 'ú', 'ü', 'ű', 'v', 'w', 'x', 'y', 'z'];
$rossz=array();
$helyes=array();
?> <div class="tokkozepre"><?php
function oldalbetolt($rossz, $randomszo, $helyes){
?> <form method = "POST" action =" " id="beform">
<b style="font-size: 20px;">A tippelendő betű: </b><br><br>
<input type="text" style="height:30px; padding: 5px; font-size: 15px;" name="bevittbetu" pattern="[a-záéiíóöőúüű]{1}" title="A mező csak 1 kisbetűt tartalmazhat!!!"><br><br>
<input type="hidden" name="info1" id="info1" value="<?php print $rossz; ?>" />
<input type="hidden" name="info2" id="info2" value="<?php print $randomSzo; ?>" />
<input type="hidden" name="info3" id="info3" value="<?php print $helyes; ?>" />
<br><input type="submit" name ="submit" value="Küld!" style="height:45px; width:60px; font-size: 16px" >
</form><?php
}
function ujjatek(){
global $generalSzavak; global $rossz; global $randomSzo;
$randomSzo=$generalSzavak[array_rand($generalSzavak)];
print $randomSzo."<br>";
for ($i=0; $i<strlen($randomSzo); $i++) $valasz[]= $randomSzo[$i];
print_r($valasz);
?><h1 id="szo">
<?php for ($y=0; $y<strlen($randomSzo); $y++) print $y; ?>
</h1>
<script>
funtion atvalt(){ document.getElementById('beform').action = "akasztofa.php";}
</script><?php
oldalbetolt(0,$randomSzo,0);
}
function koztesoldal(){
$ertek1=$_POST['info1']; $ertek2=$_POST['info2']; $ertek3=$_POST['info3'];
$tippbetu=$_POST['bevittbetu'];
for ($a=0; $a<strlen($randomSzo); $a++){
if ($tippbetu==$randomSzo[$a]){
$helyes[]=$tippbetu; $valasz[$a]=$tippbetu;
} else { $rossz[]=$tippbetu;}
}
oldalbetolt($ertek1, $ertek2, $ertek3);
if (count($ertek3)==strlen($ertek2)) {print "<b style=\"color:green; font-size: 20px\"\">NYERTÉL - KITALÁLTAD! A keresett szó: ".$randomSzo."<br><br></b>";}
else{
print "<table>"; print "<tr>"; print "<td>";
require_once 'abrak.php'; /* Akasztási ábrák */
print "</td>"; print "</tr>";
print "<tr>"; print "<td>"; print "<b>Hibás betűk: </b><br>";
for ($y=0; $y<count($ertek1); $y++) print "<b>".$ertek1[$y].", </b>";
print "</table>";
}
}
if (isset($_POST['info1']) && isset($_POST['info2']) && isset($_POST['info3']) && isset($_POST['bevittbetu']) && ($_POST['submit'] === 'submit')) koztesoldal();
else ujjatek();
?>
</div></body></html>
abrak.php:
<?php
switch (count($ertek1)){ /*Ábra fázisok */
case "1":
print ("Hibás! Próbáld újra.<br><br>");
print"  <br>";
print"  <br>";
print"  <br>";
print"  <br>";
print"  <br>";
print"  <br>";
print"  <br>";
print"  <br>";
print"  <br>";
print("_ _ _|_ _ _");
break;
case "2":
print ("Hibás! Próbáld újra<br><br>");
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print("_ _ _|_ _ _");
break;
case "3":
print ("Hibás! Próbáld újra<br><br>");
print" _ _ _ _ _ _<br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print("_ _ _|_ _ _");
break;
case "4":
print ("Hibás! Próbáld újra<br><br>");
print" _ _ _ _ _ _<br>";
print" |  _|_<br>";
print" | /  ".chr(92)."".chr(92)."<br>";
print" |  | |<br>";
print" |  ".chr(92)."".chr(92)."_ _/<br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print" |  <br>";
print("_ _ _|_ _ _");
break;
case "5":
print ("Hibás! Próbáld újra<br><br>");
print" _ _ _ _ _ _<br>";
print" |  _|_<br>";
print" | /  ".chr(92)."".chr(92)."<br>";
print" |  | |<br>";
print" |  ".chr(92)."".chr(92)."_ _/<br>";
print" |  |<br>";
print" |  |<br>";
print" |  <br>";
print" |  <br>";
print("_ _ _|_ _ _");
break;
case "6":
print ("<b style=\"color:red; font-size: 20px\"\">VESZTETTÉL-Nincs több lehetőség<br><br></b>");
print" _ _ _ _ _ _<br>";
print" |  _|_<br>";
print" | /  ".chr(92)."".chr(92)."<br>";
print" |  | |<br>";
print" |  ".chr(92)."".chr(92)."_ _/<br>";
print" |  |<br>";
print" |  |<br>";
print" | / ".chr(92)."".chr(92)."<br>";
print" | /  ".chr(92)."".chr(92)."<br>";
print("_ _ _|_ _ _");
break;
}
?>