gpt4 book ai didi

php - 空格后不允许有字符。使用 PHP 插入 MySQL

转载 作者:行者123 更新时间:2023-11-29 09:14:12 24 4
gpt4 key购买 nike

好吧,我认为这很简单,但我不知道(我是 PHP 和 MySQL 的新手)。

我有一个从数据库中的表中获取数据的选择。我只是简单地采用用户选择的任何选项并将其放入带有 php mysql insert 语句的单独表中。

但我遇到了问题。当我点击提交时,所有内容都会正确提交,除了任何带有空格的选择选项在第一个空格之后不会提交。例如,如果选项是COMPUTER REPAIR,则发送的所有内容都是COMPUTER。如果需要,我将发布代码,任何帮助将不胜感激。谢谢!

好的,这是我选择的代码:

<?php
include("./config.php");
$query="SELECT id,name FROM category_names ORDER BY name";
$result = mysql_query ($query);
echo"<div style='overflow:auto;width:100%'><label>Categories (Pick three that describe your business)</label><br/><select name='select1'><option value='0'>Please Select A Category</option>";
// printing the list box select command
while($catinfo=mysql_fetch_array($result)){//Array or records stored in $nt


echo "<option>$catinfo[name]</option><br/>

";

}

echo"</select></div>";

?>

这是我的插入代码(只是为了让您知道它包含所有内容而不仅仅是选择!)

?php
require("./config.php");
$companyname = mysql_real_escape_string(addslashes(trim($_REQUEST['name'])));
$phone = mysql_real_escape_string(addslashes($_REQUEST['phone']));
$zipcode = mysql_real_escape_string(addslashes($_REQUEST['zipcode']));
$city = mysql_real_escape_string(addslashes($_REQUEST['city']));
$description = mysql_real_escape_string(addslashes($_REQUEST['description']));
$website = mysql_real_escape_string(addslashes($_REQUEST['website']));
$address = mysql_real_escape_string(addslashes($_REQUEST['address']));
$other = mysql_real_escape_string(addslashes($_REQUEST['other']));
$payment = mysql_real_escape_string(addslashes($_REQUEST['payment']));
$products = mysql_real_escape_string(addslashes($_REQUEST['products']));
$email = mysql_real_escape_string(addslashes($_REQUEST['email']));
$select1 = mysql_real_escape_string(addslashes($_REQUEST['select1']));
$select2 = mysql_real_escape_string(addslashes($_REQUEST['select2']));
$select3 = mysql_real_escape_string(addslashes($_REQUEST['select3']));
$save=$_POST['save'];
if(!empty($save)){

$sql="INSERT INTO gj (name, phone, city, zipcode, description, dateadded, website, address1, other2, payment_options, Products, email,cat1,cat2,cat3)
VALUES
('$companyname','$phone','$city','$zipcode','$description',curdate(),'$website','$address','$other','$payment','$products','$email','$select1','$select2','$select3')";

if (!mysql_query($sql,$link))
{
die('Error: ' . mysql_error());
}
echo "<br/><h2><font color='green' style='font-size:15px'>1 business added</font></h2>";

mysql_close($link);
}

?>

最佳答案

放置 value="$catinfo[name]"在您的<option>上标签,所以它们看起来像这样:

echo "<option value=\"".htmlspecialchars($catinfo['name'])."\">".$catinfo['name']."</option>";

由于您省略了它们,因此它使用 <option> 之间的任何内容。默认情况下标记,并且由于它们周围没有引号,因此它将空格确定为值的末尾。通过将要插入数据库的实际值放在 value 内属性,您明确告诉它在引号之间使用完整的短语。

此外,删除 <br/>因为您不需要在 <select> 中放置中断符元素。

关于php - 空格后不允许有字符。使用 PHP 插入 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4653976/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com