我這個代碼為什麼提交什麼資料都插入到資料的內容都一樣呢?

來源:互聯網
上載者:User
不管提交什麼資料都是插入圖片裡面的內容 也就是把name自身插入進去了 沒有把name的值插進去 這是為什嗎?
我在2.php上試了一下 這樣
print_r($_POST);
exit();
$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");
.....
為什麼還是把原來的東西插入進去了 還是沒變化 這是為什麼



這是1.php
$db = new PDO('mysql:host=localhost;dbname=t1', 'root', '',array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
$rs = $db -> prepare("select * from `baidu`;");
$rs -> execute();
$list = $rs -> fetchAll(PDO::FETCH_ASSOC);
?>





foreach($list as $v){
echo $v['type'].'
';
echo $v['name'].'
';
echo $v['num'].'
';
echo $v['site'].'
';
echo $v['content'].'
';
}
?>








這是2.php

$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");
if($pdo->exec("INSERT INTO baidu(
type,
name,
num,
site,
content
)
VALUES ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')"){
echo "";
}
?>


回複討論(解決方案)

2.php 代碼都是錯誤的 if那少右括弧
然後你mysql列印出來的資料是之前的
你這雷根本就沒執行成功

你的2.php錯誤, 你是想要插入成功之後彈出一個提示吧。

還在糾結這個問題啊。
上次不是說了,你SQL語句拼接得不對。
字串和變數的拼接有問題,這是基礎知識,你得好好補補:

$str = "This is string '". $_POST['name'] . "' some string ";

2.php 代碼都是錯誤的 if那少右括弧
然後你mysql列印出來的資料是之前的
你這雷根本就沒執行成功


不少右括弧啊

把if去掉,php執行順序是從上到下,你為什麼要加if ,判斷結果是否插入成功也不是這麼判斷的吧

如果還不對,你在把所有的這些 ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')")
post取得的值 手動寫上 比如 1 2 3 4 5 ,看看是否能插入 如果還是不能,那就說明前面的
$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");
$pdo->exec 這些錯了,一點一點排錯唄。


2.php 代碼都是錯誤的 if那少右括弧
然後你mysql列印出來的資料是之前的
你這雷根本就沒執行成功


不少右括弧啊


$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");if($pdo->exec("INSERT INTO baidu(type,name,num,site,content)VALUES ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')") {echo "";}

$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");
if($pdo->exec("INSERT INTO baidu(
type,
name,
num,
site,
content
)
VALUES ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')")
{
echo "";
}

顏色不會編輯 左括弧4個 右括弧3個、、、

f($pdo->exec("INSERT INTO baidu(
type,
name,
num,
site,
content
)
VALUES ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')") ){
少了個 ),你的程式有語法錯誤,不會被執行!

如果程式能正常執行,只是寫入庫的資料有問題,那就輸出SQL語句看看是什麼樣的。

f($pdo->exec("INSERT INTO baidu(
type,
name,
num,
site,
content
)
VALUES ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')") ){
少了個 ),你的程式有語法錯誤,不會被執行!



還是不行

f($pdo->exec("INSERT INTO baidu(
type,
name,
num,
site,
content
)
VALUES ('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')") ){
少了個 ),你的程式有語法錯誤,不會被執行!


我都不知道為什麼我把2.php裡面alert那句話刪了 為什麼還是彈出來提示框來

那就是你還有個 2.php

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.