··조회 19,922
제로보드에서 운영자님 이름보고 도움 요청합니다
여기저기 물어봐도 시원한 답변을 못 구하겠어요
제가 php를 배우지 못해서 소스는 전혀 모르거든요
좀 도와주세요
운영자님꼐는 너무 쉬운거 아닌가 걱정이네요...
웹에서 구한 공짜 숫자추측게임 소스인데요
랜덤하게 나오는 숫자를 알아맞추는 소스같아요
화면에 있는 Play!버튼을 클릭할때마다 클릭한 횟수(카운트)가 텍스트박스 같은곳에 나타나게 하고 싶어요
또 추가로 이 소스에는 1~100까지의 숫자만 입력하게끔 되어 있는데 만약 100을 초과하는 숫자를 입력한후 버튼을 클릭했을때는 카운트가 되지않게 하고 싶습니다
소스를 어떻게 하면 되는지 좀 알려주시면 감사하겠습니다
아니면 주제넘게도 아래 소스를 위에 말씀드린 것대로 수정해 주시면
더욱 감사하겠습니다
너무 많은걸 요구해서 죄송하구요^^
아래는 소스이고 데모사이트는 바로 밑에 있습니다
http://yournet.mireene.com/bbs/mola/num/number.php
======================================================================
<hr>
<?php // AND THIS LINE
echo"<p align='center'>";
echo"<font face='$fontface' size='4'><b>";
echo"Number Guess";
echo"</b></font>";
echo"</p>";
echo"<p align='left'>";
echo"<font face='Verdana' size='3'>";
if ($to_do != "play") {echo"Enter a number between 1 and $max to play.";}
if ($to_do == "play" ){
$number = rand(1,$max);
$guess = HTMLSpecialChars($guess);
if ($guess>$max) {
echo "Sorry, the number you entered was more than $max. Please enter a number between 1 and $max. ";
echo "The correct number this time was <b>$number</b>. You guessed <b>$guess.</b>";
}
elseif ($guess>$number) {
echo "Sorry, your guess is too high.<br>";
echo "The correct number this time was <b>$number</b>. You guessed <b>$guess.</b>";
}
if ($guess=="") {
echo"You forgot to enter a number. If you had entered <b>$number</b>, you would have won. ";
}
if ($guess<$number) {
echo "Sorry, your guess is too low.<br>";
echo "The correct number this time was <b>$number</b>. You guessed <b>$guess.</b>";
}
if ($guess == $number) {
echo "Congratulations! You guessed correctly! The number was <b>$number</b>.";
won();
}
}
echo"</font></p>";
echo"<form method='post' action='$PHP_SELF'>";
echo"<input type='hidden' name='to_do' value='play'>";
echo"<p align='center'>";
echo"<font face='$fontface' size='3'>";
if ($to_do == "play") {echo"Play again?";}
if ($to_do != "play") {echo"Enter your guess:";}
echo"<br><br>";
echo"<input name='guess' type='text' value='$guess'><br>";
echo"<input type='submit' value='Play!'>";
echo"</font></p>";
echo"</form>";
starsol();
// ENTER ALL HTML YOU WANT BELOW THE NUMBER GUESS BETWEEN THIS LINE ?>
<hr>
<?php // AND THIS LINE
function won(){
global $fontface;
echo"<font face='$fontface' size='3'><b>Congratulations! You guessed correctly!</b></font>";
include('number_won.php');
return;
}
function starsol(){
global $fontface, $version;
echo"<br><br><center><font face='Verdana' size='1' color='#888888'>Powered by: <a href='http://www.starsol.co.uk/scripts/' target='_blank'>Starsol</a> Number Guess $version</font></center>";
return;
}
?>
제가 php를 배우지 못해서 소스는 전혀 모르거든요
좀 도와주세요
운영자님꼐는 너무 쉬운거 아닌가 걱정이네요...
웹에서 구한 공짜 숫자추측게임 소스인데요
랜덤하게 나오는 숫자를 알아맞추는 소스같아요
화면에 있는 Play!버튼을 클릭할때마다 클릭한 횟수(카운트)가 텍스트박스 같은곳에 나타나게 하고 싶어요
또 추가로 이 소스에는 1~100까지의 숫자만 입력하게끔 되어 있는데 만약 100을 초과하는 숫자를 입력한후 버튼을 클릭했을때는 카운트가 되지않게 하고 싶습니다
소스를 어떻게 하면 되는지 좀 알려주시면 감사하겠습니다
아니면 주제넘게도 아래 소스를 위에 말씀드린 것대로 수정해 주시면
더욱 감사하겠습니다
너무 많은걸 요구해서 죄송하구요^^
아래는 소스이고 데모사이트는 바로 밑에 있습니다
http://yournet.mireene.com/bbs/mola/num/number.php
======================================================================
<hr>
<?php // AND THIS LINE
echo"<p align='center'>";
echo"<font face='$fontface' size='4'><b>";
echo"Number Guess";
echo"</b></font>";
echo"</p>";
echo"<p align='left'>";
echo"<font face='Verdana' size='3'>";
if ($to_do != "play") {echo"Enter a number between 1 and $max to play.";}
if ($to_do == "play" ){
$number = rand(1,$max);
$guess = HTMLSpecialChars($guess);
if ($guess>$max) {
echo "Sorry, the number you entered was more than $max. Please enter a number between 1 and $max. ";
echo "The correct number this time was <b>$number</b>. You guessed <b>$guess.</b>";
}
elseif ($guess>$number) {
echo "Sorry, your guess is too high.<br>";
echo "The correct number this time was <b>$number</b>. You guessed <b>$guess.</b>";
}
if ($guess=="") {
echo"You forgot to enter a number. If you had entered <b>$number</b>, you would have won. ";
}
if ($guess<$number) {
echo "Sorry, your guess is too low.<br>";
echo "The correct number this time was <b>$number</b>. You guessed <b>$guess.</b>";
}
if ($guess == $number) {
echo "Congratulations! You guessed correctly! The number was <b>$number</b>.";
won();
}
}
echo"</font></p>";
echo"<form method='post' action='$PHP_SELF'>";
echo"<input type='hidden' name='to_do' value='play'>";
echo"<p align='center'>";
echo"<font face='$fontface' size='3'>";
if ($to_do == "play") {echo"Play again?";}
if ($to_do != "play") {echo"Enter your guess:";}
echo"<br><br>";
echo"<input name='guess' type='text' value='$guess'><br>";
echo"<input type='submit' value='Play!'>";
echo"</font></p>";
echo"</form>";
starsol();
// ENTER ALL HTML YOU WANT BELOW THE NUMBER GUESS BETWEEN THIS LINE ?>
<hr>
<?php // AND THIS LINE
function won(){
global $fontface;
echo"<font face='$fontface' size='3'><b>Congratulations! You guessed correctly!</b></font>";
include('number_won.php');
return;
}
function starsol(){
global $fontface, $version;
echo"<br><br><center><font face='Verdana' size='1' color='#888888'>Powered by: <a href='http://www.starsol.co.uk/scripts/' target='_blank'>Starsol</a> Number Guess $version</font></center>";
return;
}
?>
댓글 3
1. head 태그 사이에 다음 스크립트를 삽입합니다.
<script language="javascript">
function check_submit() {
if (document.myForm.guess.value < 0) {
alert('0보다 큰 숫자를 입력하세요');
document.myForm.guess.focus();
return;
} else if (document.myForm.guess.value > 100) {
alert('100보다 작은 숫자를 입력하세요');
document.myForm.guess.focus();
return;
} else {
document.myForm.action = "<?=$PHP_SELF?>";
document.myForm.submit();
}
}
</script>
2.
form 태그 부분을 아래와 같이 수정합니다.
<form name='myForm' method='post'>
3.
submit 부분을 다음과 같이 수정합니다.
<input type='submit' value='Play!' onclick='javascript:check_submit();'>
즉, Play! 버튼을 누르면 자바스크립트를 통해 100 초과하는 숫자일 경우 다시 입력받게하고, 정상적으로 입력했을 때 action을 취하도록 한 것입니다.
당장 해보고 싶네요
소스에 head도 없고 스크립트 삽입하면 '구문오류'라고만 나로고,클릭횟수 표시해주는 박스도 보이질 않네요...