2014-12-20 59 views
0

我需要关于您的主题的帮助。从两个数据库列名插入一个输入值

我只有一个<input>的名字:

<input type="text" name="name" id="name" class="name_" placeholder="Your Name"> 

这里是我邮编:

<?php 
include_once 'includes/db.php'; 
include_once 'includes/user.php'; 
include_once'includes/alphaID.php'; 
$user = new user(); 
$set_error=''; 
if(isset($_POST['name'])) 
{ 
$name=$_POST['name']; 
$rname=$_POST['name']; 
$name = alphaID(microtime(true) * 10000); 

if (strlen($rname)>0) 
{ 


$set=$user->Create_Name($name,$rname,$uid,$uemail); 
if($set) 
{ 
$_SESSION['id']=$set; 

} 
else 
{ 
$set_error="<span class='seterror'>name is already exists.</span>"; 
} 
} 
} 
?> 

,并插入代码是在这里:

<?php 
    class user 
    { 
     public function Create_Name($name,$rname,$uid,$uemail) 
    { 
     $name= mysql_real_escape_string($name); 
     $rname= mysql_real_escape_string($name); 
     $rname= mysql_real_escape_string($rname); 
     $qu= mysql_query("SELECT id FROM users WHERE rname='$rname'"); 
     if(mysql_num_rows($qu)==0) 
     { 
      $id = "{$uid}"; 
      $cekme = mysql_query("SELECT * FROM users WHERE uid = '$id'"); 
      $goster = mysql_fetch_array($cekme); 
      extract($goster); 
      $email = "{$email}"; 
      var_dump($name); 
      var_dump($rname); 
      $query = mysql_query("INSERT INTO users(name,rname,uid,uemail)VALUES('$name','$rname','$uid','$email')"); 
      return $id=mysql_insert_id() ;  
    } 
    else 
    { 
    return false; 
    } 
    } 
} 

?> 

现在我是什么试图去做。你可以在这里看到$name这个$name与alphaID.php一起发布。 基于microtime()的alphaID()值,它始终更改。 像

名=的Lorem impsum DOLAR

名= ebO80dHE

现在从rname同时我要发布真实姓名(的Lorem impsum DOLAR)。

我的代码发布alphaID namername不张贴。

名= string(8) "ebO80dHE" RNAME = string(0) ""

回答

1
$name= mysql_real_escape_string($name); 
    $rname= mysql_real_escape_string($name); 
    $rname= mysql_real_escape_string($rname); 

删除第二行:

$name= mysql_real_escape_string($name); 
    $rname= mysql_real_escape_string($rname); 

同时,尝试在这里打印名称:

if(isset($_POST['name'])) 
{ 
$name=$_POST['name']; 
$rname=$_POST['name']; 
var_dump($rname); 

$name = alphaID(microtime(true) * 10000); 

if (strlen($rname)>0) - 如果这是真的,我不明白rname可以在您发布的代码中为空。

尝试public function Create_Name加入rname更var_dumps:在开始和$rname= mysql_real_escape_string之后 - 任何地方$rname变化。这应该给出它变空的确切位置。

+0

没有任何更改 – innovation

+0

在任何处理之前打印名称,可能是表单输入的问题。 '$ rname = $ _ POST ['rname'];之后的 –

+0

; var_dump($ rname);'显示我的rname问题在哪里? – innovation

相关问题