2016-07-18 3 views
-1

하나의 등록 양식이 있습니다. 데이터베이스에 레코드를 삽입하고 있지만 동시에 새 테이블이 제출 될 때 생성됩니다 ...하지만 문제가 있습니다. 실행 쿼리 나던 '을 만들 수는'그래서 메시지가 "문제가 발생했습니다! :("로.새 레코드를 삽입하는 동안 새 테이블을 만듭니다.

<?php 
include('data_conn.php'); 

if(isset($_POST['subm'])){ 

    $email = mysql_real_escape_string($_POST['email']); 
$query = "SELECT * FROM login WHERE email='$email'"; 
    $result = mysql_query($query) or die(mysql_error()); 

    if (mysql_num_rows($result)) { 
     echo '<script language="javascript">'; 
    echo 'alert("Email is Already Exist...."); location.href="signup.php"'; 
    echo '</script>'; 
    } 
    else { 
     $f_name = $_POST['f_name']; 

     $c_name = $_POST['c_name']; 
     $c_add = $_POST['c_add']; 
     $mob = $_POST['mob']; 
     $email = $_POST['email']; 
     $password = $_POST['password']; 



     $query = "INSERT INTO login (first_name,company_name,company_add,last_name,email,password,account) VALUES ('$f_name','$c_name','$c_add','$mob','$email','$password','deactivate')"; 

     $result = mysql_query($query) or die(mysql_error()); 

     $query1="CREATE TABLE $db_name.$email('name' VARCHAR(20) NOT NULL)"; 


$result1=mysql_query($query1); 




     if($result==1 && $result1==1) 
    { 
     echo '<script language="javascript">'; 
    echo 'alert("successfully registered!!!"); location.href="signup.php"'; 
    echo '</script>'; 

    } 
    else 
    { 
     echo '<script language="javascript">'; 
    echo 'alert("Something Went Wrong!!! :("); location.href="signup.php"'; 
    echo '</script>'; 
    } 
    } 
} 
?> 
+0

왜 이메일 주소를 기반으로 새 테이블을 만들려고? 또한 전자 메일 주소에 테이블 이름에 잘못된 문자가 포함되어있을 수 있습니다. – jeff

+0

보스, 테이블이 아직 존재하지 않으면 레코드를 INSERT 할 수 없습니다. 테이블을 생성하기 전에 INSERT 쿼리를 실행했다. – KaeL

+0

내가 레코드를 삽입하고자하는 테이블이 이미 db에 존재하지만 동시에 해당 사용자의 정보를 추가 할 새로운 테이블을 만들고 싶다면 다른 (즉, 로그인) ... – Rkboss

답변

0
$query1="CREATE TABLE IF NOT EXISTS $db_name.$email('name' VARCHAR(20) NOT NULL)"; 
    $result1=mysql_query($query1); 

확인 등장 당신은 여기에 몇 가지 테이블을 만들었습니다. 그러나 당신은 테이블 login, 왜에 데이터를 삽입하는 ? 위의 표가 목적지 인 경우 이유는 무엇입니까? login 표? 새 표를 만든 경우 newtable이라고 말하면

$query = "INSERT INTO newtable(first_name,company_name,company_add,last_name,email,password,account) VALUES ('$f_name','$c_name','$c_add','$mob','$email','$password','deactivate')"; 
       $result = mysql_query($query) or die(mysql_error()); 
+0

감사합니다 ... 그것은 "$ DB_name. $ email ('name'VARCHAR (20) NOT NULL) 존재하지 않는 테이블 만들기 ..."... 고맙습니다 :) – Rkboss

0

// 테이블 열 이름의 '따옴표를 제거

$query1="CREATE TABLE $db_name.$email(name VARCHAR(20) NOT NULL)"; 
관련 문제