2011-10-01 2 views
0

나는 로그인 및 등록 페이지에서 작업을 시도하고 나는 새 데이터베이스를 만드는 중이라서 그리고 난 같이 잘 그것을 할 수 있습니다 :등록하는 각 사용자에 대해 데이터베이스 테이블을 만들려고합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

mysql_select_db("my_db", $con); 

$sql = "CREATE TABLE Persons 
(
    FirstName varchar(15), 
    LastName varchar(15), 
    Age int 
)"; 

// Execute query 
mysql_query($sql,$con); 

와 내가 뭘하려고하면 "사람"과 교체입니다 문자열을 사용하여 테이블을 만들지 만 동적입니다. 내가 등록하는 각 사용자에 대한 테이블을 만들고 새 테이블의 이름은 사용자 이름과 암호가 md5sum 암호화를 통해 전송되기 때문에 문자열이 필요합니다. 나는 이것을 시도해 보았지만 성공하지 못했습니다. 다른 테이블처럼 새로운 테이블을 만들지는 않을 것입니다 :

mysql_select_db("my_db", $con); 

$sql = "CREATE TABLE $data 
(
    FirstName varchar(15), 
    LastName varchar(15), 
    Age int 
)"; 

// Execute query 
mysql_query($sql,$con); 

도와주세요. 나는 도움이 필요할 정도로 행운을 함께 묶는 것을 시도했다.

+7

등록하는 사람별로 인물에 행을 만들고 싶지 않습니까? –

+1

코드를 강조 표시하고 상단의 '{}'버튼을 눌러 서식을 지정하는 것이 좋습니다. –

+6

이 디자인을 강력히 추천합니다. 모든 사용자는 별도의 테이블이 아닌 행과 동일한 테이블에 있어야합니다. –

답변

12

나는 등록하는 각 사용자에 대해 데이터베이스 테이블을 만들려고합니다. 내가 뭘 잘못 했니?

등록하는 각 사용자에 대해 데이터베이스 테이블을 만듭니다.

이것은 관계형 데이터베이스를 사용하는 방식이 아닙니다. 새 사용자마다 표가 아닌 을 작성하십시오. 물론 Password과 같이 Persons 테이블에 몇 가지 추가 열이 필요합니다. 나는 그것이 일정하지 않기 때문에 나이를 저장하는 것에 대해서도 권하고 싶습니다. 대신 Birthday을 보관하십시오.

INSERT INTO Persons (FirstName, LastName, Birthday, Password) 
VALUES ('John', 'Smith', '1980-07-21', 'SOME HASH HERE'); 

잘못된 것은 아니지만 더 많은 코드를 작성하기 전에 약간 느려지고 SQL에 대해 더 자세히 알아 보시기 바랍니다. 날 믿어. 장기적으로 나아질거야.

+0

고마워, 네 말이 맞았다. 나는 빨리이 길로 뛰어 올랐다. 나는 내가 13 살 때이 질문을 던졌고, 많은 것을 배웠다. –

0

나는 지난 몇 년 동안 내가 얼마나 많은 것을 배웠는지 알기 위해 과거에 물어 보았던 몇 가지 질문을 되돌아 본다.

관련 문제