溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php學(xué)習(xí)筆記(四)插入內(nèi)容

發(fā)布時(shí)間:2020-07-19 18:01:34 來源:網(wǎng)絡(luò) 閱讀:383 作者:losers 欄目:web開發(fā)

index.php

<?php
if(get_magic_quotes_gpc())  //關(guān)閉php的魔術(shù)引號(hào)功能。
{
    $process = array(&$_GET,&$_POST,&$_COOKIE,&$_REQUEST);
    while(list($key,$val) = each($process))
    {
        foreach($val as $k => $v)
        {
            unset($process[$key][$k]);
            if(is_array($v))
            {
                $process[$key][stripslashes($k)] = $v;
                $process[] = &$process[$key][stripslashes($k)];
            }
            else
            {
                $process[$key][stripslashes($k)] = stripslashes($v);
            }
        }
    }
    unset($process);
}   //關(guān)閉php的魔術(shù)引號(hào)功能。

if (isset($_GET['addjoke']))
{
include 'form.html.php';
exit();	
}

//建立連接對(duì)象
try 
 {
 $pdo = new PDO('mysql:host=localhost;dbname=test','testuser','pass');
 $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); //setAttribute  PDO對(duì)象的方法,PDO::表示這些變量是我們所使用的PDO的一部分,不是PHP語言自身內(nèi)建的變量。想要將控制錯(cuò)誤模式的PDO屬性(PDO::ATTR_ERRMODE)設(shè)置為拋出異常的模式(PDO::ERRMODE_EXCEPTION)。
 $pdo->exec('SET NAMES "utf8"'); //配置數(shù)據(jù)庫連接的字符碼。
 }
 catch (PDOException $e)
 {
     $error = '數(shù)據(jù)庫連接失??!'.$e->getMessage();//從MySql服務(wù)器獲取一條詳細(xì)的錯(cuò)誤信息
	 include 'error.html.php';
     exit();
     }

if (isset($_POST['joketext']))
{
	try
	{
$sql = 'INSERT INTO joke SET 
joketext = :joketext, 
jokedate = CURDATE()'; //CURDATE()返回當(dāng)前日期為'YYYY-MM-DD“或YYYYMMDD格式的值
$s = $pdo->prepare($sql); //將查詢發(fā)送給mydql服務(wù)器,要求他準(zhǔn)備好運(yùn)行該查詢。返回一個(gè)PDOStarement的對(duì)象。
$s->bindValue(':joketext',$_POST['joketext']); //發(fā)送給他所卻的值。
$s->execute(); //調(diào)用個(gè)PDOStarement的方法來告訴mysql服務(wù)器,使用我們提供的值來執(zhí)行查詢
}
catch (PDOException $e)
{
	$e->getMessage();
	include 'error.html.php';
	exit();
}
header('Location:.');//PHP header函數(shù)提供發(fā)送特殊服務(wù)器響應(yīng)的方法,表示一次重定向,(.)為重新加載當(dāng)前目錄。
exit();
}

try
{
$sql = 'SELECT * FROM joke';
$jieguo = $pdo->query($sql); //query 返回一個(gè)PDOStarement的對(duì)象,該對(duì)象表示一個(gè)結(jié)果集。
}
catch(PDOException $e)
{
$error = '獲取內(nèi)容失?。?nbsp;'.$e->getMessage();
include 'error.html.php';
exit();	
}
while($aaa = $jieguo->fetch()) //while用來處理大量的數(shù)據(jù),fetch將數(shù)據(jù)集中的下一行作為一個(gè)數(shù)組返回。
{
$jokes[] = $aaa['joketext']; //將每個(gè)值存儲(chǔ)為數(shù)組$jokes中的一個(gè)相
}
include 'joke.html.php';



?>


form.html.php

<title>add-form</title>
<style type="text/css">
textarea {
	display:block;  /*是讓對(duì)象成為塊級(jí)元素(比如a,span等)*/
    width:100%;    /*段落的寬度*/
	} 
</style>
</head>

<body>
<form id="form1" name="form1" method="post" action="?">  <!--在提交表單時(shí)可以從URL紅將查詢字符串分離出來-->
<div><label>添加新的內(nèi)容:</label></div>
<div><textarea cols="40" rows="3" id="joketext" name="joketext"></textarea></div>
<div><input name="" type="submit"  value="添加"/>

</div>
</form>
</body>
</html>


joke.html.php

<body>
<table width="200" border="1">
  <tr>
    <th scope="col">笑話詳情</th>
  </tr> 
  <?php foreach ($jokes as $joke): ?>
<?php echo '<tr><td>'.htmlspecialchars($joke,ENT_QUOTES,'UTF-8').'</td></tr>'; ?>

<?php endforeach; ?>
</table>
<div class="aa"><a href="?addjoke">添加</a></div>

</body>


exec與execute的區(qū)別,對(duì)象不同,exec是對(duì)象PDO的方法,execute是PDOStarement的方法。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI