一个简单的猜单词的小游戏_PHP教程
忘了从哪看到的这游戏,睡觉前想起来就立马写了个,
没什么好的思路,样式什么的也就没追求了,
用的SESSION配合AJAX弄的,
小码农,求建议指导,
PS:没怎么优化,勿喷哈,
直接复制本地就能运行了,
<?php session_start(); header("Content-type:text/html;charset=utf-8"); $url='http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; function get_word(){ $wordtext="Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of Yii Software LLC nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."; $words=preg_split("/[\s,]+/",$wordtext); do{ $i=rand(0,count($words)-1); $word=strtoupper($words[$i]); }while(strlen($word)<5 || !ctype_alpha($word)); return $word; } function guess($word){ return str_repeat('_',strlen($word)); } function output($word){ $str=''; for($i=0;$i<strlen($word);$i++){ $str.=$word[$i]." "; } return rtrim($str); } if(isset($_GET['op']) && $_GET['op']=='start'){ $k=$_GET['k']; $_SESSION['num']=$k; exit; } if(isset($_GET['restart']) && $_GET['restart']==1){ session_unset(); header("location:$url"); exit; } if(!isset($_SESSION['word'])){ $word=get_word(); $_SESSION['word']=$word; }else{ $word=$_SESSION['word']; } $guess_word=guess($word); if(isset($_GET['op']) && $_GET['op']=='ajax'){ $k=$_GET['k']; $re=''; if(!isset($_SESSION['already'])){ $_SESSION['already']=guess($_SESSION['word']); } if(!isset($_SESSION['count'])){ $_SESSION['count']=0; } if(strpos($_SESSION['word'],$k)!==false){ for($i=0;$i<strlen($_SESSION['word']);$i++){ if($_SESSION['word'][$i]!=$k){ $re.='_'; }else{ $re.=$_SESSION['word'][$i]; } } for($i=0;$i<strlen($_SESSION['word']);$i++){ if($_SESSION['already'][$i]=='_'){ $_SESSION['already'][$i]=$re[$i]; } } }else{ $_SESSION['count']+=1; } $return=output($_SESSION['already']); if($_SESSION['count'] <= $_SESSION['num']){ if($_SESSION['already']==$_SESSION['word']){ $return.="|1"; }else{ $return.="|0"; } }else{ $return.="|2"; } echo $return; exit; } ?> <script> function Ajax(recvType){ var aj=new Object(); aj.recvType=recvType ? recvType.toUpperCase() : 'HTML'; aj.targetUrl=''; aj.sendString=''; aj.resultHandle=null; aj.createXMLHttpRequest=function(){ var xmlHttp = false; if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); }else if(window.ActiveXObject){ try{ xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); }catch(error1){ try{ xmlHttp = new ActiveXobject("Microsoft.XMLHttp"); }catch(error2){ xmlHttp = false; } } } return xmlHttp; } aj.XMLHttpRequest=aj.createXMLHttpRequest(); aj.processHandle=function(){ if(aj.XMLHttpRequest.readyState == 4){ if(aj.XMLHttpRequest.status == 200){ if(aj.recvType=="HTML"){ aj.resultHandle(aj.XMLHttpRequest.responseText); }else if(aj.recvType=="XML"){ aj.resultHandle(aj.XMLHttpRequest.responseXML); } } } } aj.get=function(targetUrl, resultHandle){ aj.targetUrl=targetUrl; if(resultHandle!=null){ aj.XMLHttpRequest.onreadystatechange=aj.processHandle; aj.resultHandle=resultHandle; } if(window.XMLHttpRequest){ aj.XMLHttpRequest.open("get", aj.targetUrl); aj.XMLHttpRequest.send(null); }else{ aj.XMLHttpRequest.open("get", aj.targetUrl, true); aj.XMLHttpRequest.send(); } } return aj; } </script> <script> var ajax=Ajax(); function select(v){ document.getElementById(v).style.display='none'; ajax.get("guess.php?op=ajax&k="+v, function(r){ var t=r.split("|"); document.getElementById('word').innerHTML=t[0]; if(t[1] == 1){ document.getElementById('select').style.display='none'; document.getElementById('result').innerHTML='成功'; }else if(t[1] == 2){ document.getElementById('select').style.display='none'; document.getElementById('result').innerHTML='失败'; } }); } function check(v){ ajax.get("guess.php?op=start&k="+v, function(r){ window.location.href="<?php echo $url;?>"; }); } </script> <?php if(!isset($_SESSION['num'])){ echo '<input type="radio" onclick="check(10);" /> easy: wrong 10<br />'; echo '<input type="radio" onclick="check(5);" /> normal: wrong 5<br />'; echo '<input type="radio" onclick="check(3);" /> hard: wrong 3<br />'; }else{ //echo $word; echo "最多可以猜错 ".$_SESSION['num']." 次"; echo "<br />"; echo "<div id='word'>"; echo output($guess_word); echo "</div>"; echo '<br />'; echo '<div id="select">'; for($i=ord('A');$i<=ord('Z');++$i){ echo "\n"; $letter=chr($i); echo '<span id="'.$letter.'" style="display:"><a href="javascript:void(0);" onclick="select(\''.$letter.'\');">'.$letter.'</a></span>'; } echo '</div>'; echo '<br />'; echo '<br />'; echo '<div id="result"></div>'; echo '<br />'; echo '<br />'; echo '<a href="'.$url.'?restart=1">重新开始</a>'; } ?>

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Adalah perkara biasa bagi permainan untuk memperlahankan komputer anda kerana ia menggunakan banyak sumber. Adalah penting untuk memahami penggunaan CPU anda semasa bermain permainan supaya anda boleh mengelak daripada membebankannya. Oleh itu, menjejaki penggunaan CPU yang sesuai adalah kunci untuk memastikan pengalaman permainan anda lancar. Dalam artikel ini, kami akan melihat penggunaan CPU yang sesuai yang perlu anda capai semasa permainan anda sedang berjalan. Penggunaan CPU semasa penggunaan CPU permainan ialah penunjuk penting beban kerja pemproses dan bergantung pada spesifikasi prestasi CPU. CPU yang lebih berkuasa biasanya mempunyai penggunaan yang lebih tinggi. CPU dengan lebih banyak teras dan benang boleh meningkatkan prestasi keseluruhan sistem anda. Sokongan berbilang benang membantu melepaskan potensi penuh CPU anda. Dalam permainan, penggunaan CPU bergantung pada penggunaan pemproses, yang boleh menjejaskan permainan

Jika Nvgpucomp64.dll menyebabkan permainan anda kerap ranap, penyelesaian yang disediakan di sini boleh membantu anda. Masalah ini biasanya disebabkan oleh pemacu kad grafik yang lapuk atau rosak, fail permainan yang rosak, dsb. Membetulkan isu ini boleh membantu anda menangani ranap permainan. Fail Nvgpucomp64.dll dikaitkan dengan kad grafik NVIDIA. Apabila fail ini ranap, permainan anda juga akan ranap. Ini biasanya berlaku dalam permainan seperti LordsoftheFallen, LiesofP, RocketLeague dan ApexLegends. Nvgpucomp64.dll ranap permainan pada Windows PC jika N

Nombor siri cakera keras ialah pengecam penting cakera keras dan biasanya digunakan untuk mengenal pasti cakera keras secara unik dan mengenal pasti perkakasan. Dalam sesetengah kes, kami mungkin perlu menanyakan nombor siri cakera keras, seperti semasa memasang sistem pengendalian, mencari pemacu peranti yang betul atau melakukan pembaikan cakera keras. Artikel ini akan memperkenalkan beberapa kaedah mudah untuk membantu anda menyemak nombor siri cakera keras. Kaedah 1: Gunakan Windows Command Prompt untuk membuka command prompt. Dalam sistem Windows, tekan kekunci Win+R, masukkan "cmd" dan tekan kekunci Enter untuk membuka arahan

Dalam keadaan hari ini di mana hampir semua permainan adalah dalam talian, adalah tidak digalakkan untuk mengabaikan pengoptimuman rangkaian rumah. Hampir semua penghala dilengkapi dengan ciri NATBoost dan QoS yang direka untuk meningkatkan pengalaman permainan pengguna. Artikel ini akan meneroka definisi, kelebihan dan keburukan NATBoost dan QoS. NATBoost vs. Qos untuk permainan; NATBoost, juga dikenali sebagai Rangsangan Penterjemahan Alamat Rangkaian, ialah ciri terbina dalam penghala yang meningkatkan prestasinya. Ia amat penting untuk permainan kerana ia membantu mengurangkan kependaman rangkaian, iaitu masa yang diperlukan untuk data dipindahkan antara peranti permainan dan pelayan. Dengan mengoptimumkan kaedah pemprosesan data dalam penghala, NATBoost mencapai kelajuan pemprosesan data yang lebih pantas dan kependaman yang lebih rendah, sekali gus mengubah

Permainan superpeople boleh dimuat turun melalui klien wap Saiz permainan ini ialah kira-kira 28G Ia biasanya mengambil masa satu setengah jam untuk memuat turun dan memasang Berikut ialah tutorial muat turun dan pemasangan khusus untuk anda. Kaedah baharu untuk memohon ujian tertutup global 1) Cari "SUPERPEOPLE" dalam kedai Steam (muat turun klien stim) 2) Klik "Minta akses kepada ujian tertutup SUPERPEOPLE" di bahagian bawah halaman kedai "SUPERPEOPLE" 3) Selepas mengklik butang minta butang akses, Permainan "SUPERPEOPLECBT" boleh disahkan dalam perpustakaan Steam 4) Klik butang pasang dalam "SUPERPEOPLECBT" dan muat turun

Menurut berita dari laman web ini pada 23 Februari, NVIDIA mengemas kini dan melancarkan aplikasi NVIDIA malam tadi, menyediakan pemain dengan pusat kawalan GPU bersatu baharu, membolehkan pemain merakam detik indah melalui alat rakaman berkuasa yang disediakan oleh terapung dalam permainan. tingkap. Dalam kemas kini ini, NVIDIA turut memperkenalkan fungsi RTXHDR Pengenalan rasmi dilampirkan seperti berikut: RTXHDR ialah penapis Freestyle baharu yang diperkasakan AI yang boleh memperkenalkan kesan visual cantik julat dinamik tinggi (HDR) ke dalam permainan yang tidak pada asalnya. menyokong HDR. Apa yang anda perlukan ialah monitor serasi HDR untuk menggunakan ciri ini dengan pelbagai jenis permainan berasaskan DirectX dan Vulkan. Selepas pemain mendayakan fungsi RTXHDR, permainan akan berjalan walaupun ia tidak menyokong HD

Rakan-rakan yang telah cukup bermain karya AAA dan permainan mudah alih, adakah anda ingin menghidupkan semula permainan komputer zaman kanak-kanak anda? Kemudian mari kita cari Spider Solitaire dalam Windows 11 bersama-sama! Klik menu Mula pada antara muka, klik butang "Semua Apl"; Cari dan pilih "MicrosoftSolitaireCollection", iaitu aplikasi permainan siri Solitaire Microsoft; Selepas pemuatan selesai, masukkan antara muka pemilihan dan cari "Spider Solitaire"; Walaupun antara muka telah berubah sedikit, ia masih sama seperti dahulu
![Panel kawalan Thrustmaster tidak berfungsi atau dipaparkan dengan betul [Tetap]](https://img.php.cn/upload/article/000/887/227/170831073283375.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
Thrustmaster ialah syarikat yang mengkhusus dalam pengeluaran roda permainan dan aksesori permainan lain Produk rodanya sangat popular dalam komuniti permainan. Tetapan roda Thrustmaster boleh dipasang dan dilaraskan menggunakan panel kawalan Thrustmaster. Jika anda menghadapi masalah dengan panel kawalan tidak berfungsi atau dipaparkan, ia mungkin menjejaskan pengalaman permainan anda. Oleh itu, apabila ini berlaku, anda perlu menyemak sama ada sambungan adalah normal dan memastikan pemacu perisian dipasang dengan betul dan dikemas kini kepada versi terkini. Selain itu, anda juga boleh cuba memulakan semula peranti atau menyambung semula peranti untuk menyelesaikan kemungkinan kegagalan. Apabila anda menghadapi masalah, anda boleh merujuk kepada tapak web rasmi Thrustmaster atau menghubungi perkhidmatan pelanggan untuk mendapatkan bantuan lanjut. Bagaimana untuk mengakses Thrustma
