2016-11-22 10 views
0

を示す私はサインアップページを作っていると私は、データベースに値を挿入する必要があります。PHPのPDOは、xを挿入するとy

コード:

<?php 
    include 'config.php'; 
    $nome = $_POST['nome']; 
    $sobrenome = $_POST['sobrenome']; 
    $email = $_POST['email']; 
    $ocupacao = $_POST['ocupacao']; 
    $senha = $_POST['senha']; 
    $senha2 = $_POST['senha2']; 
    $emailkey = md5(microtime().rand()); 
    $ativo = 0; 
    $db = new PDO('mysql:host=localhost;dbname=sdpa;charset=utf8mb4', $user, $pass); 

    $checemail = $db->prepare("SELECT * FROM usuarios WHERE Email = :email"); 
    $checemail->bindParam(':email', $email, PDO::PARAM_STR); 
    $checemail->execute(); 

    if ($checemail->rowCount() > 0) { 
     //email already cadastred 
    } else { 
     $qr = $db->prepare("INSERT INTO usuarios(Nome, Sobrenome, Email, Ocupacao, Senha, EmailKey, Ativo) VALUES(?, ?, ?, ?, ?, ?, ?)"); 
     $qr->bindParam(1, $nome, PDO::PARAM_STR); 
     $qr->bindParam(2, $sobrenome, PDO::PARAM_STR); 
     $qr->bindParam(3, $email, PDO::PARAM_STR); 
     $qr->bindParam(4, $ocupacao, PDO::PARAM_STR); 
     $qr->bindParam(5, $senha, PDO::PARAM_STR); 
     $qr->bindParam(6, $emailkey, PDO::PARAM_STR); 
     $qr->bindParam(7, $ativo, PDO::PARAM_STR); 
     $qr->execute(); 

     mail($email, "Chave de Ativacao", "Olá, obrigado por se registrar no SDPA, para ativar a sua conta, entre no link \n http://localhost/register_final?key=" + $emailkey + "", "Chave De Aticavao"); 
     echo "" + $emailkey; 
    } 

    $db = null; 
?> 

をしかし、DB、PHPで

aea3001cbe1aae38e0768b4d2d304c67

そして、エコーや電子メールでは、このことを示しています:挿入これを

+0

どの列がこの値を取得していますか? – Phiter

+2

phpの場合、連結記号は '' '' '' '' '' '' '' ''ではありませんので、あなたのメールで '' '?key =" $ emailkey''' Cf. http:// php.net/manual/en/language.operators.string.php – olibiaz

答えて

2

PHPでは、プラス記号(+)を使用するJavascriptとは異なり、ピリオドまたはショートストップ(。)を使用して文字列を連結することをお勧めします。 - String Operators

関連する問題