我正在使用一個簡單的html表單和PHP將字符串插入到mySQL數據庫中,這對於短字符串來說工作得很好,確實不適合長字符串。如何使用PHP將長字符串插入mySQL數據庫?
使用phpmyadmin我能夠插入所有長度的字符串,它只能用於html文件和PHP。
將瞭解各種幫助,希望能更多地瞭解這個主題......
謝謝大家很多提前和對不起,如果這個問題是簡單...
有兩個非常類似的問題,我發現迄今...不幸的是,他們不能幫助:
INSERTing very long string in an SQL query - ERROR
How to insert long text in Mysql database ("Text" Datatype) using PHP
在這裏,你可以找到我的HTML表單:
<html>
<body>
<form name="input" action = "uploadDataANDGetID.php" method="post">
What is your Name? <input type="text" name="Name"><br>
Special about you? <input type="text" name="ThatsMe"><br>
<input type ="submit" value="Und ab die Post!">
</form>
</body>
</html>
,這裏是一個名爲uploadDataANDGetID.php的PHP腳本:
<?php
$name = $_POST["Name"];
$text = $_POST["ThatsMe"];
$con = mysql_connect("localhost", "username", "password") or die("No connection established.");
mysql_select_db("db_name") or die("Database wasn't found");
$q_post = mysql_query("INSERT INTO profiles VALUES (null, '{$name}' ,'{$text}')");
$q_getID =mysql_query("SELECT ID FROM profiles WHERE Name = '{$name}' AND ThatsMe = '{$text}'");
if(!$q_post) // if INSERT wasn't successful...
{
print('[{"ID": "-3"}]');
print("uploadDataAndGetID: Insert wasn't successful...");
print("about ME: ".$text);
}
else // insertion succeeded
{
while ($e=mysql_fetch_assoc($q_getID))
$output[]=$e;
//checking whether SELECTion succeeded too...
$num_results = mysql_num_rows($q_getID);
if($num_results < 1)
{
// no such profile available
print('[{"ID": "-1"}]');
}
else
{
print(json_encode($output));
}
}
mysql_close();
?>
謝謝你們!
你能發佈你得到的錯誤和你的表格描述? – Jayaram
另外,如果你想獲得新的iserted行的ID,你應該使用'mysql_insert_id'函數 –
哇,夥計們!非常感謝您回答如此之快並且非常樂於助人! – lifelover