我想在列voornaam
中将列familienaam
en volledige_naam
放在一起。
但我还想将字段voornaam
en familienaam
保留在我的数据库中。
我尝试使用if
功能,但我一直在收到错误。
任何人都知道我需要怎么做?
mysql表创建者脚本。
function CreateTable()
{
$qry = "Create Table $this->tablename (".
"id_user INT NOT NULL AUTO_INCREMENT ,".
"volledige_naam VARCHAR( 128 ) NOT NULL ,".
"voornaam VARCHAR( 128 ) NOT NULL ,".
"familienaam VARCHAR( 128 ) NOT NULL ,".
"adres VARCHAR( 128 ) NOT NULL ,".
"postcode VARCHAR( 128 ) NOT NULL ,".
"gemeente VARCHAR( 128 ) NOT NULL ,".
"dob VARCHAR( 128 ) NOT NULL ,".
"tele VARCHAR( 128 ) NOT NULL ,".
"email VARCHAR( 64 ) NOT NULL ,".
"username VARCHAR( 16 ) NOT NULL ,".
"password VARCHAR( 32 ) NOT NULL ,".
"confirmcode VARCHAR(32) ,".
"PRIMARY KEY ( id_user )".
")";
if(!mysql_query($qry,$this->connection))
{
$this->HandleDBError("Error creating the table \nquery was\n $qry");
return false;
}
return true;
}
输入脚本的集合
function CollectRegistrationSubmission(&$formvars)
{
$formvars['voornaam'] = $this->Sanitize($_POST['voornaam']);
$formvars['familienaam'] = $this->Sanitize($_POST['familienaam']);
插入mysql脚本。
function InsertIntoDB(&$formvars)
{
$confirmcode = $this->MakeConfirmationMd5($formvars['email']);
$formvars['confirmcode'] = $confirmcode;
$insert_query = 'insert into '.$this->tablename.'(
volledige_naam,
voornaam,
familienaam,
adres,
postcode,
gemeente,
dob,
tele,
email,
username,
password,
confirmcode
)
values
(
"' . $this->SanitizeForSQL($formvars['volledige_naam']) . '",
"' . $this->SanitizeForSQL($formvars['voornaam']) . '",
"' . $this->SanitizeForSQL($formvars['familienaam']) . '",
"' . $this->SanitizeForSQL($formvars['adres']) . '",
"' . $this->SanitizeForSQL($formvars['postcode']) . '",
"' . $this->SanitizeForSQL($formvars['gemeente']) . '",
"' . $this->SanitizeForSQL($formvars['dob']) . '",
"' . $this->SanitizeForSQL($formvars['tele']) . '",
"' . $this->SanitizeForSQL($formvars['email']) . '",
"' . $this->SanitizeForSQL($formvars['username']) . '",
"' . md5($formvars['password']) . '",
"' . $confirmcode . '"
)';
if(!mysql_query( $insert_query ,$this->connection))
{
$this->HandleDBError("Error inserting data to the table\nquery:$insert_query");
return false;
}
return true;
答案 0 :(得分:0)
您可以将记录保存在两列中,并在PHP或中轻松加入
在您的查询中。但是如果你想将它们存储在另一列中
无论如何,您可以在插入查询中加入。只需换一行,
而不是传递可能的PROC RANK
在您的表单中不存在,传递已加入的变量:
$formvars['volledige_naam'])
如果您选择仅将它们分开存储,请在$formvars['voornaam'] . ' ' . $formvars['familienaam']
查询中
可以使用类似下面的内容来检索单个名称
柱:
SELECT
或者你可以单独检索它们并用PHP连接它们
类似的方法。此外,如评论中所述,您应该使用
PHP DataObjects,简称PDO。旧SELECT CONCAT_WS(' ', voornaam, familienaam) AS volledige_naam FROM gebruikers
函数是
很久以前就弃用了。