我正在尝试将字符串分解为数组。要在名字,中间名和姓氏中展开的全名。
<?php
include('conn.php');
$un=$_POST['uname'];
$pw=$_POST['pw'];
$fulnem=$_POST['fullnem'];
$temp=explode('/',$fulnem);
$email=$_POST['email'];
$method="creates";
$sql="call compactproc('$un', '$pw', '$temp[0]', '$temp[1]', '$temp[2]', '$email', '$method')";
$result=mysql_query($sql);
if(!$result){
echo "error!";
}
?>
这是程序正文:
BEGIN
IF actions="creates" THEN
INSERT INTO admin_table(Uneym, Pwerd, Firstname, Middlename, Lastname, Email) VALUES(usrname, psword, frstname, midname, lstname, imail);
END IF;
END
只有firstname存储在数据库中。为什么? midname和lastname没有存储,我在sql查询的行上得到了未定义的偏移量错误。 你能告诉我这里有什么问题。
答案 0 :(得分:0)
您可能需要使用空格而不是
/
进行展开:
$temp=explode(' ',$fulnem);
答案 1 :(得分:0)
我希望你不要在调用compactproc的参数中使用单引号(')。
答案 2 :(得分:0)
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
希望有帮助,我遇到了同样的问题,添加了这个小片段即可解决我的问题。直接来自W3school。