欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      PHP編程防止多表單提交技術(shù)

      時(shí)間:2019-05-12 19:45:14下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《PHP編程防止多表單提交技術(shù)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《PHP編程防止多表單提交技術(shù)》。

      第一篇:PHP編程防止多表單提交技術(shù)

      PHP編程防止多表單提交技術(shù)

      眾多的PHP程序員都知道,在網(wǎng)站開(kāi)發(fā)過(guò)程中,對(duì)于表單提交要考慮到眾多的因素,例如當(dāng)用戶(hù)在執(zhí)行多次表單提交時(shí)是否會(huì)影響到整個(gè)程序代碼的運(yùn)用,是否會(huì)產(chǎn)生不良的警告,這些都是我們的PHP程序員在開(kāi)發(fā)過(guò)程中所必須考慮的問(wèn)題;當(dāng)用戶(hù)提交一個(gè)HTML表單時(shí),它可能要花費(fèi)幾秒鐘才能成功提交,并執(zhí)行顯示響應(yīng)頁(yè)面的形式。用戶(hù)可以得到空閑,并多次單擊提交按鈕,這就會(huì)在很大的程度上會(huì)導(dǎo)致重復(fù)的表單提交;其實(shí)這樣的操作通常并不真的是一個(gè)問(wèn)題,然而在某些情況下,作為開(kāi)發(fā)網(wǎng)站的PHP程序員來(lái)說(shuō)就要防止這種情況的發(fā)生,因?yàn)檫@不僅會(huì)對(duì)用戶(hù)的使用產(chǎn)生影響,更重要的是對(duì)整個(gè)程序代碼的運(yùn)行產(chǎn)生影響。

      我們?cè)赑HP程序開(kāi)發(fā)的過(guò)程中總結(jié)了下面兩個(gè)簡(jiǎn)單的技巧,以防止用戶(hù)重復(fù)提交,確保程序的正常運(yùn)行,保證用戶(hù)能夠正常操作使用;我們可以使用一下技巧中的一個(gè)或兩者的結(jié)合來(lái)實(shí)現(xiàn)防止多表單重復(fù)提交。防止多個(gè)表單提交使用Javascript塊重復(fù)提交可能是最簡(jiǎn)單的方法,同時(shí)也是比較快捷的辦法;當(dāng)有人提交表單我們簡(jiǎn)單地禁用Submit按鈕,可能改變它的值為更具描述性的東西,比如“提交,請(qǐng)稍候??”等語(yǔ)句來(lái)實(shí)現(xiàn),試著點(diǎn)擊這個(gè)按鈕,例如。它仍將禁用,直到你重新加載此頁(yè)面:

      PHP程序員在編寫(xiě)表單代碼的時(shí)候,第一步是要給你的提交按鈕一個(gè)惟一的id,例如id =“myButton“:。第二個(gè)(也是最后一次)的步驟是給兩個(gè)Javascript命令

      標(biāo)記。第一個(gè)是將告訴瀏覽器禁用submit按鈕的表單被提交之后,第二個(gè)是將更改按鈕的文本來(lái)給用戶(hù)一些知道發(fā)生了什么。這是代碼添加到你的表單標(biāo)記:onsubmit=“document.getElementById('myButton').disabled=true;document.getElementById('myButton').value='Submitting, please wait...';”你的表單標(biāo)記將類(lèi)似于 :PHP程序員就是這樣實(shí)現(xiàn)防止用戶(hù)多表單提交的;這種方法應(yīng)用于大多數(shù)的瀏覽器(IE +,FireFox、Opera、?)。

      除了以上的方法之外我們的PHP程序員也可以通過(guò)防止多個(gè)表單提交來(lái)使用cookie的方法來(lái)實(shí)現(xiàn);如果你想避免重復(fù)提交的整個(gè)瀏覽器會(huì)話(huà)(或更長(zhǎng)),你可以考慮使用Cookie。例如編輯自己的表單處理腳本的瀏覽器發(fā)送cookie的形式后,已被處理,但在此之前的任何HTML或重定向打印頭被。將這段代碼的mail()命令后,應(yīng)在大多數(shù)情況下:setcookie('FormSubmitted', '1');然后在處理之前檢查cookie。如果有這個(gè)訪(fǎng)問(wèn)者已經(jīng)提交了表單在活躍的瀏覽器會(huì)話(huà)。將下列代碼添加到窗體的開(kāi)始處理腳本:if(isset($_COOKIE['FormSubmitted']){ die('You may only submit this form once per session!');},PHP程序員在編寫(xiě)表單代碼的時(shí)候就是使用這樣的方法實(shí)現(xiàn)了防止用戶(hù)多表單提交。

      因此不管PHP程序員是做哪一類(lèi)的網(wǎng)站開(kāi)發(fā)都要考慮到用戶(hù)的使用是否實(shí)現(xiàn)了簡(jiǎn)易操作,使用方便,實(shí)現(xiàn)較好的交互性,都要考慮防止多表單提交來(lái)實(shí)現(xiàn)更好的用戶(hù)體驗(yàn),這是整個(gè)網(wǎng)站項(xiàng)目開(kāi)發(fā)中一個(gè)非常重要的步驟,也是必不可少的環(huán)節(jié)。

      文章來(lái)源:http://004km.cn/readnews/782

      第二篇:PHP程序員應(yīng)該掌握PHP編程與HTML表單(本站推薦)

      PHP程序員應(yīng)該掌握PHP編程與HTML表單

      一:學(xué)習(xí)目標(biāo)

      (1)、掌握HTML表單格式

      (2)、掌握各種表單元素的常用屬性(3)、掌握各種表單元素的應(yīng)用(4)、掌握$_POST/GET變量(5)、了解URL編碼和BASE64編碼(6)、掌握PHP的編碼和解碼函數(shù)

      (一):表單數(shù)據(jù)的提交方式(1)、通過(guò)GET方式提交

      通過(guò)GET方法時(shí),表單數(shù)據(jù)被當(dāng)作URL的一部分一起傳過(guò)去。格式如下:http://004km.cn/content.php?id=1172

      第三篇:最好的編程語(yǔ)言——PHP

      千鋒教育-中國(guó)IT職業(yè)教育領(lǐng)先品牌

      最好的編程語(yǔ)言——PHP

      1)、PHP在所有開(kāi)發(fā)語(yǔ)言中,是一門(mén)最容易學(xué)的語(yǔ)言。

      PHP主要是被用來(lái)做Web開(kāi)發(fā),應(yīng)用環(huán)境比較單純,較少涉及底層操作,所以語(yǔ)法簡(jiǎn)單,概念比較少,非常易學(xué)易用。而且PHP提供了很多實(shí)用的內(nèi)置函數(shù),為Web開(kāi)發(fā)提供了很多方便,讓代碼更好寫(xiě)。

      另外PHP有成熟的開(kāi)發(fā)工具,如著名的 CI、zend、Yii、Symfony、Canphp、Thinkphp等一批性能卓著的框架,來(lái)給PHP增添羽翼。PHP上手非??欤瑢W(xué)習(xí)成本也足夠低。

      2)、PHP最開(kāi)源,是一門(mén)最有利于快速提高編程能力的語(yǔ)言

      PHP作為一門(mén)語(yǔ)言,具有資源的多樣性、開(kāi)源性,擁有一些大家公認(rèn)的PHP開(kāi)源成品,如目前流行的DISCUZ論壇、EcShop商城、phpcms建站、DEDECMS建站、WordPress博客、phpMyAdmin等。這些PHP開(kāi)源程序的公開(kāi),為PHP新手與老手提供了一個(gè)個(gè)便利的平臺(tái),用于學(xué)習(xí)參考以改良自己的系統(tǒng)。很多人就是收益于此,在從業(yè)的很短時(shí)間內(nèi)走上了很高的臺(tái)階。

      3)、PHP開(kāi)發(fā)優(yōu)勢(shì)明顯,需求旺盛,是一門(mén)首選的互聯(lián)網(wǎng)編程語(yǔ)言。

      PHP與其他互聯(lián)網(wǎng)編程語(yǔ)言比較,開(kāi)發(fā)優(yōu)勢(shì)明顯(打個(gè)比方,JAVA 3個(gè)月的項(xiàng)目,用PHP 1個(gè)月差不多了),代碼執(zhí)行起來(lái)會(huì)更快,而且可跨平臺(tái),具有很強(qiáng)的兼容性。比如同樣功能的PHP代碼,不用改變就可以在不同的WEB服務(wù)器上、不同的操作系統(tǒng)下運(yùn)行。

      目前PHP 5已經(jīng)有成熟的面向?qū)ο篌w系,能夠適應(yīng)基本的面向?qū)ο笠?,適合開(kāi)發(fā)大型項(xiàng)目,再加上主流技術(shù)比如WebService、Ajax、XML等等都支持PHP,所以PHP已經(jīng)成為各IT公司首選的互聯(lián)網(wǎng)編程語(yǔ)言,未來(lái)發(fā)展空間巨大。

      千鋒教育004km.cn

      千鋒教育-中國(guó)IT職業(yè)教育領(lǐng)先品牌

      4)、就業(yè)前景極為光明,是一門(mén)最容易找工作的語(yǔ)言

      目前,一方面PHP程序員極度緊缺,另一方面隨著中國(guó)“互聯(lián)網(wǎng)+”不斷的發(fā)展,不僅北京、上海、深圳等一線(xiàn)城市對(duì)PHP程序員有著旺盛的需求,在一些二線(xiàn)城市比如天津、杭州、成都、長(zhǎng)沙、重慶、武漢等省會(huì)城市也對(duì)PHP程序員需求旺盛,薪資也頗具競(jìng)爭(zhēng)力,遠(yuǎn)比其他IT語(yǔ)言好找高薪工作(可加當(dāng)?shù)豴hp交流群驗(yàn)證)。如果你懼怕一線(xiàn)城市的工作壓力,學(xué)一門(mén)技術(shù)是想回自己家鄉(xiāng)的省會(huì)城市高薪就業(yè),那強(qiáng)烈建議你選擇學(xué)習(xí)PHP!

      5)、php門(mén)檻低,但發(fā)展空間巨大,是一門(mén)提薪最快的語(yǔ)言。

      盡管php門(mén)檻低,學(xué)習(xí)起來(lái)容易,因此有些人誤以為這是一個(gè)不太有發(fā)展前景的語(yǔ)言。其實(shí)這是一個(gè)很大的誤區(qū)。其他語(yǔ)言由于理論概念較多,大家都必須掌握這些語(yǔ)言的很多底層的細(xì)節(jié)問(wèn)題,細(xì)節(jié)上花的時(shí)間太多反而失去了很多高層次架構(gòu)上的研究機(jī)會(huì)。而PHP語(yǔ)言在細(xì)節(jié)上的問(wèn)題,語(yǔ)言的開(kāi)發(fā)者都替從業(yè)者解決了,PHP程序員可以更多的考慮高層次架構(gòu)上的問(wèn)題了。對(duì)PHP有一個(gè)深入的掌握會(huì)使PHP程序員打開(kāi)更多的未知領(lǐng)域的大門(mén)。所以互聯(lián)網(wǎng)業(yè)內(nèi)薪水上升的最快的很多都是php開(kāi)發(fā)人員。

      在千鋒PHP培訓(xùn)中,每當(dāng)學(xué)習(xí)了一段時(shí)間的新的技術(shù),總會(huì)有一段時(shí)間是

      千鋒教育004km.cn

      千鋒教育-中國(guó)IT職業(yè)教育領(lǐng)先品牌

      讓學(xué)員自己做項(xiàng)目的。自己做項(xiàng)目的過(guò)程是一個(gè)充滿(mǎn)自豪感的過(guò)程,看到用自己學(xué)習(xí)的東西寫(xiě)出來(lái)一個(gè)漂亮的網(wǎng)站,心里是很滿(mǎn)足的。并且在自己完成項(xiàng)目的過(guò)程中會(huì)將以前學(xué)習(xí)的東西串聯(lián)起來(lái),更鞏固了以前的知識(shí)。

      畢業(yè)的千鋒PHP學(xué)員已有足夠的項(xiàng)目經(jīng)驗(yàn)的積累,逐漸累計(jì)的核心競(jìng)爭(zhēng)力助力學(xué)員在求職大軍中披荊斬棘,一往無(wú)前!

      千鋒教育004km.cn

      第四篇:php工程師的面試題(編程部分)

      php工程師的面試題(編程部分)

      一.寫(xiě)一個(gè)函數(shù),盡可能高效的,從一個(gè)標(biāo)準(zhǔn) url 里取出文件的擴(kuò)展名

      例如: http://.cn/abc/de/fg.php?id=1 需要取出 php 或.php

      二在 HTML 語(yǔ)言中,頁(yè)面頭部的 meta 標(biāo)記可以用來(lái)輸出文件的編碼格式,以下是一個(gè)標(biāo)準(zhǔn)的 meta 語(yǔ)句

      請(qǐng)使用 PHP 語(yǔ)言寫(xiě)一個(gè)函數(shù),把一個(gè)標(biāo)準(zhǔn) HTML 頁(yè)面中的類(lèi)似 meta 標(biāo)記中的 charset 部分值改為 big5

      請(qǐng)注意:

      1.需要處理完整的 html 頁(yè)面,即不光此 meta 語(yǔ)句

      2.忽略大小寫(xiě)

      3.' 和 " 在此處是可以互換的4.'Content-Type' 兩側(cè)的引號(hào)是可以忽略的,但 'text/html;charset=gbk' 兩側(cè)的不行

      5.注意處理多余空格

      三寫(xiě)一個(gè)函數(shù),算出兩個(gè)文件的相對(duì)路徑

      如 $a = '/a/b/c/d/e.php';

      $b = '/a/b/12/34/c.php';

      計(jì)算出 $b 相對(duì)于 $a 的相對(duì)路徑應(yīng)該是../../c/d將()添上

      四.寫(xiě)一個(gè)函數(shù),能夠遍歷一個(gè)文件夾下的所有文件和子文件夾。

      五.簡(jiǎn)述論壇中無(wú)限分類(lèi)的實(shí)現(xiàn)原理。

      六.設(shè)計(jì)一個(gè)網(wǎng)頁(yè),使得打開(kāi)它時(shí)彈出一個(gè)全屏的窗口,該窗口中有一個(gè)文本框和一個(gè)按鈕。用戶(hù)在文本框中輸入信息后點(diǎn)擊按鈕就可以把窗口關(guān)閉,而輸入的信息卻在主網(wǎng)頁(yè)中顯示。

      七.禁用COOKIE 后 SEESION 還能用嗎?

      八.抓取遠(yuǎn)程圖片到本地,你會(huì)用什么函數(shù)?

      九.已知姓名A,姓名B,給一個(gè)求他們緣份的算法

      十.你覺(jué)得在PV10W的時(shí)候, 同等配置下,LUNIX 比WIN快多少?

      十一.簡(jiǎn)述POST 和GET傳輸?shù)淖畲笕萘糠謩e是多少?

      十二.用最少的代碼寫(xiě)一個(gè)求3值最大值的函數(shù).

      第五篇:開(kāi)發(fā)技術(shù)(PHP)測(cè)試題

      1、簡(jiǎn)述靜態(tài)網(wǎng)頁(yè)和動(dòng)態(tài)網(wǎng)頁(yè)的區(qū)別,從文件擴(kuò)展名、使用技術(shù)、表現(xiàn)形式、執(zhí)行位置等進(jìn)行闡述

      答案:

      2、簡(jiǎn)述如何搭建PHP程序的環(huán)境

      答案:

      3、簡(jiǎn)述PHP語(yǔ)言中,流程控制的分類(lèi),及幾種代表語(yǔ)句。

      答案:

      4、簡(jiǎn)述表單提交過(guò)程中,get和post方式的區(qū)別

      答案:

      5、簡(jiǎn)述session機(jī)制的原理

      答案:

      6、如何在php程序中啟動(dòng)session

      答案:

      7、代碼如下

      $arr=array(“I”,“am”,“a”,“student”);

      $whole=implode(_,$arr);

      echo $whole;

      代碼輸出的結(jié)果是:

      答案:

      8、代碼如下

      $color=imagecolorallocate($img,0,0,255);

      代碼實(shí)現(xiàn)的功能:

      答案:

      9、代碼如下:

      echo “今天是 ”.date(Y年n月j日);

      $w=date(w);

      $week=array(星期日,星期一,星期二,星期三,星期四,星期五,星期六);

      echo $week[$w];

      代碼實(shí)現(xiàn)的功能:

      輸出今天的日期和是周幾

      輸出的內(nèi)容是(按考試的日期來(lái)輸出即可):

      2021/12/21 星期二

      答案:

      10、代碼如下:

      $pageno=isset($_GET[pageno])?$_GET[pageno]:1;

      代碼實(shí)現(xiàn)的功能:

      答案:

      11、php的源碼是

      A、開(kāi)放的

      B、封閉的C、需購(gòu)買(mǎi)的D、完全不可見(jiàn)的答案: A12、靜態(tài)網(wǎng)頁(yè)的執(zhí)行在瀏覽器端完成,動(dòng)態(tài)網(wǎng)頁(yè)的執(zhí)行在服務(wù)器端完成答案: 正確

      13、動(dòng)態(tài)頁(yè)面中不可以出現(xiàn)html、css和javaScript的代碼

      答案: 錯(cuò)誤

      14、服務(wù)器收到客戶(hù)發(fā)出的靜態(tài)頁(yè)面請(qǐng)求之后,只把該頁(yè)面文件發(fā)送給客戶(hù)瀏覽器來(lái)執(zhí)行

      答案: 錯(cuò)誤

      15、存放在任意文件夾中的php文件都可以通過(guò)localhost/…方式來(lái)執(zhí)行

      答案: 錯(cuò)誤

      16、搭建PHP環(huán)境時(shí)要先安裝php,再安裝apache服務(wù)器

      答案: 錯(cuò)誤

      17、apache服務(wù)默認(rèn)占用80號(hào)端口,不可更改

      答案: 錯(cuò)誤

      18、下面哪項(xiàng)不屬于靜態(tài)網(wǎng)頁(yè)設(shè)計(jì)中使用的核心技術(shù)

      A、HTML

      B、DreamWeaver

      C、CSS

      D、Javascript

      答案: B19、下面哪組中列舉的技術(shù)都屬于動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)時(shí)使用的核心技術(shù)

      A、ASP、JSP、SSP

      B、JSP、XHTML、PHP

      C、JSP、PHP、ASP

      D、PHP、ASP、Javascript

      答案: C20、動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)的本質(zhì)區(qū)別是

      A、靜態(tài)頁(yè)面運(yùn)行后能夠查看所有的源代碼,動(dòng)態(tài)頁(yè)面中動(dòng)態(tài)部分源代碼則無(wú)法查看

      B、靜態(tài)網(wǎng)頁(yè)任何時(shí)候運(yùn)行內(nèi)容都相同,動(dòng)態(tài)頁(yè)面則不然

      C、動(dòng)態(tài)頁(yè)面是在服務(wù)器端執(zhí)行的,而靜態(tài)頁(yè)面是在瀏覽器端執(zhí)行的D、靜態(tài)頁(yè)面中可以包含各種小動(dòng)畫(huà),動(dòng)態(tài)頁(yè)面不可以

      答案: C21、下面各種說(shuō)法中錯(cuò)誤的是

      A、在動(dòng)態(tài)頁(yè)面中可以包含大量的靜態(tài)代碼

      B、使用靜態(tài)頁(yè)面技術(shù)可以實(shí)現(xiàn)動(dòng)態(tài)變化的時(shí)鐘效果

      C、動(dòng)態(tài)頁(yè)面的運(yùn)行過(guò)程通常會(huì)包含在服務(wù)器端的執(zhí)行過(guò)程和在瀏覽器端的執(zhí)行過(guò)程兩個(gè)階段

      D、瀏覽器請(qǐng)求執(zhí)行一個(gè)靜態(tài)頁(yè)面時(shí),服務(wù)器先把頁(yè)面文件執(zhí)行完畢,然后將結(jié)果傳遞到瀏覽器端顯示

      答案: D22、下面關(guān)于PHP的說(shuō)法錯(cuò)誤的是

      A、PHP是一種服務(wù)器端的腳本

      B、PHP程序可以在任意環(huán)境中執(zhí)行

      C、在PHP文件中可以包含任意的HTML代碼和樣式的應(yīng)用

      D、使用PHP可以實(shí)現(xiàn)注冊(cè)、登錄、在線(xiàn)投票、訪(fǎng)客計(jì)數(shù)等動(dòng)態(tài)頁(yè)面中需要的各種功能

      答案: B23、若PHP文件中包含html代碼,下面描述中正確的是

      A、服務(wù)器將整個(gè)php文件發(fā)送給瀏覽器執(zhí)行

      B、服務(wù)器將所有代碼執(zhí)行后將結(jié)果送給瀏覽器

      C、服務(wù)器執(zhí)行html代碼后將執(zhí)行結(jié)果和php代碼一起送給瀏覽器

      D、服務(wù)器執(zhí)行php代碼后,將指向結(jié)果和html代碼一起送給瀏覽器

      答案: D24、下面哪組是PHP支持的服務(wù)器環(huán)境

      A、Apache和pws

      B、Apache、IIS和pws

      C、Apache和IIS

      D、只有Apache

      答案: C25、若是系統(tǒng)中已經(jīng)存在了IIS服務(wù),且占用了80端口號(hào),則下面說(shuō)法正確的是

      A、Apache能夠成功安裝,但是無(wú)法啟用,只需要修改端口號(hào)即可啟用

      B、Apache無(wú)法完成安裝過(guò)程

      C、Apache能夠成功安裝,且能正常啟用

      D、以上說(shuō)法都不正確

      答案: A26、下面關(guān)于Apache主目錄說(shuō)法錯(cuò)誤的是

      A、安裝Apache之后,必須要將頁(yè)面文件放在其主目錄下才能正常運(yùn)行

      B、安裝Apache之后,系統(tǒng)會(huì)給其指定默認(rèn)的主目錄

      C、Apache的主目錄不能隨意修改

      D、用戶(hù)可以根據(jù)需要修改Apache主目錄

      答案: C27、搭建apache web服務(wù)器(使用phpstduy)之后,默認(rèn)情況下運(yùn)行文件時(shí)的localhost對(duì)應(yīng)哪個(gè)文件夾?

      A、apache

      B、htdocs

      C、,需要使用哪個(gè)代碼實(shí)現(xiàn)

      A、onsubmit=“window.open(zhuce.html);”

      B、onsubmit=“window.open(zhuce.html);”

      C、onclick=“window.open(zhuce.html);”

      D、onclick=“window.open(zhuce.html);”

      答案: C185、要在表單文本框中顯示數(shù)組元素$row[title]的值,則代碼是:

      答案:

      echo $row[title];;

      解析:

      186、判斷表單文本框age的數(shù)據(jù)是否提交到服務(wù)器端的方法是______

      A、if($_POST[age]==)

      B、if(isset($_POST[age]))

      C、if($_POST[age]=)

      D、if(isset($_FILES[age]))

      答案: A187、代碼if(document.getElementById(jieshao).value=)用于判斷id為jieshao的表單元素值是否為空

      答案: 錯(cuò)誤

      188、使用函數(shù)move_uploaded_file()時(shí)只需提供一個(gè)參數(shù)

      答案: 錯(cuò)誤

      189、表單中有文件域元素時(shí),下面哪個(gè)說(shuō)法錯(cuò)誤________

      A、中method屬性取值可以是get

      B、中enctype屬性取值為multipart/form-data

      C、文件域元素需要設(shè)置name屬性

      D、可以有多個(gè)文件域元素

      答案: A190、存在表單文件域元素fname,系統(tǒng)數(shù)組$_FILES[fname]中的內(nèi)容不包括___

      A、上傳文件的名稱(chēng)

      B、上傳文件的類(lèi)型

      C、上傳文件的大小

      D、上傳文件的內(nèi)容

      答案: D191、進(jìn)行文件上傳時(shí),文件相關(guān)信息存放在系統(tǒng)數(shù)組____中

      答案: $_FILES;

      192、以下系統(tǒng)數(shù)組中可以使用兩個(gè)下標(biāo)的是___________

      A、$_POST

      B、$_GET

      C、$_FILES

      D、$_SESSION

      答案: C193、函數(shù)move_uploaded_file()只需要一個(gè)參數(shù)()

      答案: 錯(cuò)誤

      194、若存在文件域元素名稱(chēng)為f1,$_FILES[‘F1’]是一個(gè)數(shù)組()

      答案: 正確

      195、進(jìn)行文件上傳時(shí),需要在form標(biāo)記中設(shè)置屬性enctype的取值是

      A、multipart/form-data

      B、text/plain

      C、application/x-www-form-urlencoded

      D、以上都不是

      答案: A196、關(guān)于函數(shù)move_uploaded_file(),下列說(shuō)法錯(cuò)誤的是

      A、該函數(shù)需要指定兩個(gè)參數(shù)

      B、第二個(gè)參數(shù)需要同時(shí)指定文件存儲(chǔ)的位置和要保存文件的名稱(chēng)

      C、第一個(gè)參數(shù)需要指定文件的臨時(shí)存儲(chǔ)位置和臨時(shí)名稱(chēng)

      D、以上說(shuō)法都是錯(cuò)誤的答案: D197、關(guān)于系統(tǒng)數(shù)組$_FILES,第二個(gè)下標(biāo)不包含下面哪一項(xiàng)

      A、tmpname

      B、size

      C、name

      D、type

      答案: A198、關(guān)于多文件上傳功能中,下面說(shuō)法錯(cuò)誤的是

      A、文件域元素中必須添加multiple屬性

      B、可以同時(shí)選擇不同文件夾中的文件

      C、$_FILES[file1][name]是一個(gè)數(shù)組

      D、文件域元素的name屬性取值必須帶有[]

      答案: B199、$_FILES{“touxiang”][“type”]作用是

      A、獲取上傳文件的類(lèi)型

      B、獲取上傳文件的大小

      C、獲取上傳文件的名稱(chēng)

      D、獲取上傳文件的臨時(shí)存儲(chǔ)信息

      答案: A200、完成文件上傳功能,在標(biāo)簽中使用哪個(gè)屬性設(shè)置編碼_____

      A、enctype

      B、name

      C、ID

      D、action

      答案: A201、在A網(wǎng)頁(yè)上創(chuàng)建了一個(gè)Session變量:$____SESSION[“user”]=“張三”,在B網(wǎng)頁(yè)上要輸出這個(gè)Session變量的值,應(yīng)使用。

      答案: echo $_SESSION[“user”];

      202、在同一個(gè)網(wǎng)站的不同文件之間傳遞數(shù)據(jù)的機(jī)制是__________

      A、session

      B、cookie

      C、application

      D、post

      答案: A203、下面哪個(gè)系統(tǒng)數(shù)組不用于接收表單提交的數(shù)據(jù)________

      A、$_SESSION

      B、$_FILES

      C、$_POST

      D、$_GET

      答案: A204、關(guān)于session機(jī)制的描述中正確的是_____

      A、用戶(hù)的session都保存在瀏覽器端

      B、一旦某個(gè)頁(yè)面向session中提供了數(shù)據(jù),當(dāng)前網(wǎng)站中在該頁(yè)面之后執(zhí)行的頁(yè)面文件都可以根據(jù)需要從中獲取該數(shù)據(jù)

      C、不同網(wǎng)站的頁(yè)面之間可以通過(guò)session機(jī)制來(lái)傳遞數(shù)據(jù)

      D、session中存放的是所有用戶(hù)的共用數(shù)據(jù)

      答案: B205、點(diǎn)擊超鏈接可以向服務(wù)器提交數(shù)據(jù)()

      答案: 正確

      206、鏈接打開(kāi)文件count.php時(shí)使用鍵名uname提交數(shù)據(jù)“l(fā)iuhong”,超鏈接href屬性的取值為

      A、href=“count.php”?uname=“l(fā)iuhong”

      B、href=“count.php?uname:liuhong”

      C、href=“count.php?uname=liuhong”

      D、href=“count.php”?uname:“l(fā)iuhong”

      答案: C207、關(guān)于session機(jī)制的描述中錯(cuò)誤的是

      A、服務(wù)器可通過(guò)sessionID來(lái)區(qū)分各個(gè)不同用戶(hù)

      B、一旦某個(gè)頁(yè)面向session管道中提供了數(shù)據(jù),當(dāng)前網(wǎng)站中在該頁(yè)面之后執(zhí)行的頁(yè)面文件都可以根據(jù)需要從管道中獲取該數(shù)據(jù)

      C、不同網(wǎng)站的頁(yè)面之間可以通過(guò)session機(jī)制來(lái)傳遞數(shù)據(jù)

      D、要提供數(shù)據(jù)的頁(yè)面和要獲取數(shù)據(jù)的頁(yè)面都要啟用session

      答案: C208、下面說(shuō)法中錯(cuò)誤的是

      A、變量有生命周期

      B、session有生命周期

      C、session產(chǎn)生于用戶(hù)開(kāi)始訪(fǎng)問(wèn)一個(gè)網(wǎng)站時(shí)

      D、一個(gè)session中可以保存多個(gè)用戶(hù)的信息

      答案: D209、在PHP中,有兩個(gè)函數(shù)與cookie操作有關(guān)。其中____用來(lái)設(shè)置cookie變量?jī)?nèi)容, ____用來(lái)讀取cookie變量?jī)?nèi)容。

      答案: setcookie;$_COOKIE;

      210、能夠在同一網(wǎng)站不同頁(yè)面之間傳遞數(shù)據(jù)的機(jī)制是____,在程序代碼開(kāi)始處啟用該機(jī)制時(shí)需要使用的代碼是____

      答案: session;session_start();

      211、Session可以在不同網(wǎng)站的頁(yè)面之間傳遞數(shù)據(jù)()

      答案: 錯(cuò)誤

      212、mysql數(shù)據(jù)庫(kù)中查詢(xún)數(shù)據(jù)用select語(yǔ)句

      答案: 正確

      213、以下說(shuō)法不正確的是

      A、模糊查詢(xún)使用的關(guān)鍵字是like

      B、排序查詢(xún)asc是降序,desc是升序

      C、分頁(yè)查詢(xún)使用的關(guān)鍵字是limit

      D、mysql如果只安裝服務(wù)不安裝界面也可以正常使用

      答案: B214、在用瀏覽器查看網(wǎng)頁(yè)時(shí)出現(xiàn)404錯(cuò)誤可能的原因是

      A、頁(yè)面源代碼錯(cuò)誤

      B、文件不存在C、與數(shù)據(jù)庫(kù)連接錯(cuò)誤

      D、權(quán)限不足

      答案: B215、安裝MySQL數(shù)據(jù)庫(kù)之后,默認(rèn)使用的是根用戶(hù)root

      答案: 正確

      216、卸載MySQL時(shí),說(shuō)法正確的是

      A、只要在控制面板中卸載軟件即可

      B、在控制面板中卸載軟件后,清理完注冊(cè)表信息即可

      C、先刪除系統(tǒng)盤(pán)符下的文件夾,再清理注冊(cè)表信息,最后卸載軟件

      D、先在控制面板中卸載軟件,然后清理注冊(cè)表信息,最后刪除系統(tǒng)盤(pán)符下的相關(guān)文件夾

      答案: D217、MySQL服務(wù)器有一個(gè)超級(jí)管理員賬號(hào),其名稱(chēng)是()

      A、admin

      B、root

      C、sa

      D、Administrator

      答案: B218、mysqli中返回結(jié)果集中記錄總數(shù)的函數(shù)是()

      A、fetch_row

      B、fetch_assoc

      C、num_rows

      D、field_count

      答案: C219、訪(fǎng)問(wèn)mysql數(shù)據(jù)庫(kù)時(shí),用來(lái)選擇并打開(kāi)指定數(shù)據(jù)庫(kù)的方法是_________

      A、mysqli_query()

      B、mysqli_connect()

      C、mysqli_select_db()

      D、mysqli_num_rows()

      答案: C220、若是在某次訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的操作中,需要用到如下四個(gè)函數(shù)

      ①mysqli_num_rows()②mysqli_select_db()、③mysqli_connet()④mysqli_query()

      則使用這四個(gè)函數(shù)的順序是___________

      A、①②③④

      B、②③①④

      C、③②④①

      D、③④①②

      答案: C221、PHP中選擇打開(kāi)數(shù)據(jù)庫(kù)的方法是______

      A、mysqli_connect()

      B、mysqli_select_db()

      C、mysqli_query()

      D、mysqli_num_rows()

      答案: B222、查詢(xún)用戶(hù)名和密碼信息是否存在時(shí),關(guān)于查詢(xún)結(jié)果記錄集$result的說(shuō)法錯(cuò)誤的是____

      A、該記錄集中的記錄數(shù)只能是0或者1

      B、該記錄集中的記錄數(shù)無(wú)法預(yù)知

      C、若記錄數(shù)是0,說(shuō)明用戶(hù)輸入的賬號(hào)或者密碼信息有誤

      D、若記錄數(shù)是1,說(shuō)明用戶(hù)輸入的賬號(hào)和密碼信息正確

      答案: B223、訪(fǎng)問(wèn)mysql數(shù)據(jù)庫(kù)時(shí),從查詢(xún)結(jié)果記錄集中獲取一條記錄的方法是

      A、mysql_num_rows()

      B、mysql_select_db()

      C、mysql_fetch_array()

      D、mysql_fetch_Array()

      答案: C224、函數(shù)mysql_fetch_array()的作用是

      A、獲取一個(gè)數(shù)組中的元素

      B、從查詢(xún)結(jié)果記錄集中獲取一條記錄并以對(duì)象方式存儲(chǔ)訪(fǎng)問(wèn)

      C、從查詢(xún)結(jié)果記錄集中獲取一條記錄并以數(shù)組方式存儲(chǔ)訪(fǎng)問(wèn)

      D、以上說(shuō)法都不正確

      答案: C225、下面操作MySQL數(shù)據(jù)庫(kù)的方法中,哪個(gè)返回值可能是false

      A、mysql_fetch_array()

      B、mysql_select_db()

      C、mysql_num_rows()

      D、mysql_fetch_Array()

      答案: A226、查詢(xún)數(shù)據(jù)表時(shí),限制獲取查詢(xún)結(jié)果中序號(hào)為6、7、8的記錄,需要使用的子句是

      A、limit 6,8

      B、limit 6,2

      C、from 6 to 8

      D、start 6 to 8

      答案: B227、MySQL數(shù)據(jù)庫(kù)操作中,Create New Schema命令的作用是

      A、創(chuàng)建數(shù)據(jù)表

      B、創(chuàng)建數(shù)據(jù)表中一個(gè)列名

      C、創(chuàng)建數(shù)據(jù)庫(kù)

      D、以上說(shuō)法都不正確

      答案: C228、關(guān)于數(shù)據(jù)庫(kù)的導(dǎo)入操作,下列說(shuō)法中錯(cuò)誤的是

      A、使用的命令是Restore

      B、導(dǎo)入過(guò)程中可以更改原來(lái)數(shù)據(jù)庫(kù)的名稱(chēng)

      C、導(dǎo)入過(guò)程中必須要選擇忽略錯(cuò)誤選項(xiàng),否則導(dǎo)入無(wú)法完成D、若安裝數(shù)據(jù)庫(kù)時(shí)選擇的字符集是GBK,則導(dǎo)入過(guò)程中,必須要選擇字符集是GBK

      答案: D229、關(guān)于PHP訪(fǎng)問(wèn)MySQL數(shù)據(jù)庫(kù)的各種方法,下列說(shuō)法中正確的是

      A、在使用mysql_connect()連接數(shù)據(jù)庫(kù)成功之后,就可以直接訪(fǎng)問(wèn)數(shù)據(jù)表完成各種操作

      B、mysql_num_rows()的作用是獲取查詢(xún)結(jié)果記錄集中記錄的個(gè)數(shù),其參數(shù)可以省略

      C、mysql_select_db()的作用是選擇打開(kāi)指定的數(shù)據(jù)庫(kù),可以只指定一個(gè)參數(shù)

      D、mysql_query()函數(shù)只能執(zhí)行查詢(xún)語(yǔ)句,不能執(zhí)行插入、刪除、更新語(yǔ)句

      答案: C230、假設(shè)用戶(hù)在登錄時(shí),輸入的用戶(hù)名信息保存在變量$emailaddr中,密碼保存在變量$psd中,查詢(xún)數(shù)據(jù)表usermsg中是否存在該用戶(hù)名和密碼信息,需要定義的查詢(xún)語(yǔ)句是

      A、select * from usermsg where emailaddr=$emailaddr or psd=$psd

      B、select * from usermsg where emailaddr=$emailaddr and psd=$psd

      C、select * from usermsg where emailaddr=$emailaddr and psd=$psd

      D、select * from usermsg where emailaddr=$emailaddr or psd=$psd

      答案: B231、查詢(xún)用戶(hù)名和密碼信息是否存在時(shí),關(guān)于查詢(xún)結(jié)果記錄集$result的說(shuō)法錯(cuò)誤的是

      A、該記錄集中的記錄數(shù)只能是0或者1

      B、該記錄集中的記錄數(shù)無(wú)法預(yù)知

      C、若記錄數(shù)是0,說(shuō)明用戶(hù)輸入的賬號(hào)或者密碼信息有誤

      D、若記錄數(shù)是1,說(shuō)明用戶(hù)輸入的賬號(hào)和密碼信息正確

      答案: B232、要獲取記錄集$result中的記錄數(shù),需要使用代碼

      A、count($result)

      B、mysql_num_row($result)

      C、mysql_nums_rows($result)

      D、mysql_num_rows($result)

      答案: D233、MySQL中使用Select語(yǔ)句查詢(xún)時(shí),要限制返回的行數(shù)可使用____子句。

      答案: limit;

      234、訪(fǎng)問(wèn)mysql數(shù)據(jù)庫(kù)時(shí),從查詢(xún)結(jié)果記錄集中獲取一條記錄的方法是__________

      A、mysqli_num_rows()

      B、mysqli_select_db()

      C、mysqli_fetch_array()

      D、mysqli_query()

      答案: C235、在mysql Administrator界面下,Create New Schema命令的作用是_____

      A、創(chuàng)建數(shù)據(jù)庫(kù)

      B、創(chuàng)建數(shù)據(jù)表中一個(gè)列名

      C、創(chuàng)建數(shù)據(jù)表

      D、以上說(shuō)法都不正確

      答案: A236、關(guān)于數(shù)據(jù)庫(kù)的導(dǎo)入操作,下列說(shuō)法中錯(cuò)誤的是_____

      A、使用的命令是Restore

      B、導(dǎo)入過(guò)程中可以更改原來(lái)數(shù)據(jù)庫(kù)的名稱(chēng)

      C、導(dǎo)入過(guò)程中必須要選擇忽略錯(cuò)誤選項(xiàng),否則導(dǎo)入無(wú)法完成D、使用的命令是Backup

      答案: D237、假設(shè)用戶(hù)在登錄時(shí),輸入的用戶(hù)名信息保存在變量$uname中,密碼保存在變量$psd中,查詢(xún)數(shù)據(jù)表user中是否存在該用戶(hù)名和密碼信息,需要定義的查詢(xún)語(yǔ)句是_______

      A、select * from user where uname=$uname or psd=$psd

      B、select * from user where uname=$uname and psd=$psd

      C、select * from user where uname=$uname and psd=$psd

      D、select * from user where uname=$uname or psd=$psd

      答案: B238、要獲取記錄集$result中的記錄數(shù),需要使用代碼______

      A、count($result)

      B、mysqli_num_row($result)

      C、mysqli_nums_rows($result)

      D、mysqli_num_rows($result)

      答案: D239、MySQL數(shù)據(jù)庫(kù)的根用戶(hù)是____

      答案: root;

      240、下面的程序使用mysqli內(nèi)置函數(shù)連接數(shù)據(jù)庫(kù),并將表lyb中的記錄顯示在網(wǎng)頁(yè)中,將1234處填寫(xiě)完整

      “"

      241、下面的程序用來(lái)刪除記錄,當(dāng)用戶(hù)單擊“刪除”超鏈接時(shí),記錄將被刪除,將下面1234處的代碼補(bǔ)充完整

      ”“

      1.isset 2$_GET[“id”] 3.$id 4.$sql,$conn242、下面的程序是獲取到下面表單發(fā)送來(lái)的信息并按以下格式輸出

      ”“

      ”“

      將下面的服務(wù)器端的程序補(bǔ)充完整,在1234處填寫(xiě)合適的代碼

      ”“

      $user=$_POST[“user”];

      $pwd=$_POST[“pwd”];

      $addr=$_POST[“addr”];

      echo $user.“您好,您住在”.$addr.”,您的密碼是“.$pwd;

      243、1)寫(xiě)一個(gè)函數(shù),函數(shù)名為T(mén)rimtit,有兩個(gè)參數(shù)$tit,$n,函數(shù)的功能是根據(jù)指定的長(zhǎng)度截取原始字符串。

      如果原始字符串$tit的長(zhǎng)度大于指定長(zhǎng)度$n,則返回從左端截取的字符串并加“…”

      如果長(zhǎng)度未超過(guò)指定長(zhǎng)度,則返回原始字符串。

      2)并編寫(xiě)測(cè)試代碼,使用函數(shù)實(shí)現(xiàn)字符串的截取。

      答案:

      function Trimtit($tit,$n){if(strlen($tit)>$n){

      echo ”...“.substr($tit,0,$n);

      }

      else

      echo $tit;

      }

      Trimtit(”tit664848",5);

      解析:

      244、編寫(xiě)一個(gè)函數(shù),輸入是5個(gè)分?jǐn)?shù),輸出是去掉一個(gè)最高分和去掉一個(gè)最低分后的平均分。

      答案:

      function num($a,$b,$c,$d,$e){

      $s=array($a,$b,$c,$d,$e);

      $max=0;

      $min=$s[0];

      $abc=0;

      for($i=0;$i

      if($max<=$s[$i]){

      $max=$s[$i];

      }

      if($min>=$s[$i]){

      $min=$s[$i];

      }

      $abc+=$s[$i];

      }

      $abc=($abc-$min-$max)/5;

      echo $abc;

      }

      num(11,22,33,44,55);

      解析:

      245、使用for循環(huán),完成1+2+3+4+…+100求和過(guò)程,使用變量$sum表示結(jié)果并輸出。

      答案:

      $num=0;

      for($i=1;$i<=100;$i++){

      $num+=$i;

      }

      echo $num;

      imagecreatetruecolor

      輸出真彩色圖像

      246、下面哪一個(gè)不是函數(shù)imagettftext()的參數(shù)_______

      A、輸出字符的坐標(biāo)

      B、輸出字符的角度

      C、字號(hào)

      D、加粗輸出的字符

      答案: D247、創(chuàng)建真彩色圖像,使用的函數(shù)是____

      答案:

      imagecreatetruecolor();

      248、代碼imagecolorallocate($img1,255,255,0)的作用是創(chuàng)建____色

      答案: 黃;

      249、imageline()函數(shù)能夠在畫(huà)布中畫(huà)線(xiàn),需要四個(gè)參數(shù)()

      答案: 錯(cuò)誤

      250、用于創(chuàng)建一幅真彩色圖像的函數(shù)是

      A、imagecreatetruecolor()

      B、imagecreate()

      C、imagecolorallocate()

      D、imagefill()

      答案: A251、用于為指定圖像分配顏色的函數(shù)是

      A、imagecreatetruecolor()

      B、imagecreate()

      C、imagecolorallocate()

      D、imagefill()

      答案: C252、下面哪一個(gè)不是函數(shù)imagettftext()的參數(shù)

      A、字號(hào)

      B、輸出字符的角度

      C、輸出字符的顏色

      D、加粗輸出的字符

      答案: D253、函數(shù)imagesetpixel()的作用是

      A、在指定位置畫(huà)一條直線(xiàn)

      B、在指定位置設(shè)置一個(gè)單一像素

      C、使用指定的顏色填充指定的區(qū)域

      D、新建一個(gè)基于調(diào)色板的圖像

      答案: B254、若$color表示藍(lán)色,代碼imagefill($img,0,0,$color)作用是

      A、設(shè)置畫(huà)布$img中坐標(biāo)0,0的點(diǎn)為藍(lán)色

      B、為畫(huà)布填充藍(lán)色

      C、在畫(huà)布中畫(huà)藍(lán)色直線(xiàn)

      D、輸出畫(huà)布

      答案: B255、用于為畫(huà)布分配顏色的函數(shù)是_____

      A、imagefill()

      B、imagecreate()

      C、imagecolorallocate()

      D、imagecolor()

      答案: D

      下載PHP編程防止多表單提交技術(shù)word格式文檔
      下載PHP編程防止多表單提交技術(shù).doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        PHP 學(xué)習(xí)筆記(二):表單:表單處理,表單驗(yàn)證,表單實(shí)例總結(jié)

        PHP 學(xué)習(xí)筆記(二):表單:表單處理,表單驗(yàn)證,表單實(shí)例 PHP 表單 PHP 超全局變量 $_GET 和 $_POST 用于收集表單數(shù)據(jù)(form-data)。 1 GET vs. POST GET 和 POST 都創(chuàng)建數(shù)組(例如,array(......

        織夢(mèng) 自定義表單 提交不為空驗(yàn)證

        自定義表單 提交不為空驗(yàn)證......

        《PHP應(yīng)用程序技術(shù)》課程教學(xué)大綱

        四川水利職業(yè)技術(shù)學(xué)院信息工程系課程教學(xué)大綱 《PHP應(yīng)用程序技術(shù)》教學(xué)大綱 一、課程目的 通過(guò)本課程的學(xué)習(xí),課堂上先結(jié)合案例講解PHP的基本語(yǔ)法等知識(shí),再通過(guò)上機(jī)實(shí)踐和課后......

        PHP新手編程需要注意的10大問(wèn)題

        PHP新手在程序編寫(xiě)過(guò)程中需要注意的10個(gè)問(wèn)題 From:CainCheung[On the Internet]CainCheung@yahoo.cn【1】頁(yè)面之間無(wú)法傳遞變量 get,post,session在最新的php版本中自動(dòng)全局......

        編程心得(精選多篇)

        由于大學(xué)的時(shí)候是網(wǎng)絡(luò)方向的,沒(méi)大接觸編程,來(lái)到這個(gè)學(xué)校就開(kāi)始自學(xué)C++,但是感覺(jué)不知道具體該做什么。聽(tīng)人說(shuō)只學(xué)習(xí)C++的理論知識(shí)是不可能做出什么實(shí)際的東西的,而且VC和C++不是......

        學(xué)習(xí)ASP獲取HTML表單提交信息的實(shí)例范文

        在 ASP 中,有兩個(gè)很常用的集合,一個(gè)是 Request.QueryString,另一個(gè)是 Request.Form。這兩個(gè)集合可以獲取 HTML 表單(HTML Forms) 提交的信息。有關(guān) HTML 表單,請(qǐng)參見(jiàn) HTML 教程......

        數(shù)控編程機(jī)加工技術(shù)總結(jié)

        數(shù)控編程機(jī)加工技術(shù)總結(jié) 一名詞解釋 1數(shù)值控制:是用數(shù)字化信號(hào)進(jìn)行控制的一種方法。 2數(shù)控機(jī)床:裝備了數(shù)控系統(tǒng)的機(jī)床。 3插補(bǔ):數(shù)控系統(tǒng)按一定的方法確定刀具運(yùn)動(dòng)軌跡的過(guò)程。......

        PHP技術(shù)的網(wǎng)站設(shè)計(jì)畢業(yè)論文

        基于PHP技術(shù)的網(wǎng)站設(shè)計(jì)畢業(yè)論文摘要 隨著Internet在中國(guó)的迅速發(fā)展,人們?nèi)粘I钪性絹?lái)越多地使用這項(xiàng)新的技術(shù)來(lái)為自己的工作和學(xué)習(xí)服務(wù).由于WEB頁(yè)面能把文本、圖像、聲音......