我是PHP新手。現在我遇到了文件上傳的問題。 所有文件都被移動,但它沒有將文件名存儲到數據庫。 並沒有顯示錯誤。我不知道要解決這個問題。請幫助我。PHP多文件上傳多輸入
<form method="post" action="index.php?insert_ads" enctype="multipart/form-data">
<input type="file" name="b1" id="b1"/>
<b>Link</b></br>
<input type="text" id="b1l" name="b1l" class="form-control"/></br>
<b>Home Small</b> <b style="color: blue;">100 x 100 px</b></br>
<input type="userfile" name="b2" id="b2"/><br>
<b>Link</b></br>
<input type="text" id="b2l" name="b2l" class="form-control"/></br>
<input type="submit" name="submit" value="Publish"/>
</form></br>
<?php
if(isset($_POST['submit'])){
$b1 = $_FILES['b1']['name'];
$tmp1 = $_FILES['b1']['tmp_name'];
$b1l = $_POST['b1l'];
$b2 = $_FILES['b2']['name'];
$tmp2 = $_FILES['b2']['tmp_name'];
$b2l = $_POST['b2l'];
move_uploaded_file($tmp1,"ads/$b1");
move_uploaded_file($tmp2,"ads/$b2");
$insert_posts = "insert into ads (b1,b2) value ('$b1','$b2')";
$run_posts = mysql_query($insert_posts);
}
?>
你脆弱的[SQL注入攻擊(HTTP://鮑比桌。 com),你的數據庫調用絕對是** NO **錯誤處理。你完全沒有錯誤檢查你的上傳。在這兩種情況下,你只是假設什麼都不會出錯,這是非常非常差的編碼習慣。永遠不會取得成功。假設失敗,檢查失敗,並將成功視爲令人驚喜的事情。 –
**警告**:如果您只是學習PHP,請不要學習過時的'mysql_query'界面。這很糟糕,並且在未來版本的PHP中被刪除。像[PDO這樣的現代化替代品並不難學](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/)。像[PHP The Right Way](http://www.phptherightway.com/)這樣的指南可以幫助解釋最佳實踐。永遠絕對**肯定**你的用戶參數[正確逃脫](http://bobby-tables.com/php),否則你會有嚴重的[SQL注入漏洞](http://bobby-tables.com/ )。 – tadman
你有連接到數據庫的地方代碼嗎?你也可以把它放在這裏嗎?你的桌面廣告在數據庫中的表現如何? – Redrif