2016-08-19 34 views
0

私は1つのログインページとそのデータベースを持っています。私はそこから電子メールを受け取り、それを同じデータベースの別のテーブルに格納したいと思う。コードは以下のように見て、私に教えてください。セッション値を別のテーブルに保存する方法は?

表1

<?php 
session_start(); 
$email = $_POST['email']; 
$password = $_POST['password']; 

include 'connection.php'; 

$sql = "SELECT * FROM users WHERE email='$email' AND password='$password'"; 
$res = mysql_query($sql); 
$count = mysql_num_rows($res); 

if($count == 0) 
{ 
    echo "Username Password Incorrect"; 
} 
else 
{ 
    $_SESSION['email'] = $email; 
    header("location:home2.php") 
} 
?> 

表2

<?php 

$email= (HOW TO GET IT FROM SESSION?) 

$company = $_POST['company']; 
$project = $_POST['project']; 
$duration = $_POST['duration']; 
$key_learning = $_POST['key_learning']; 

include 'connection.php'; 

$sql = "INSERT INTO `internship`(`id`, `email`, `company`, `project`, `duration`, `key_learning`) VALUES ('', '$email', '$company','$project', '$duration', '$key_learning')"; 
$res = mysql_query($sql); 
$count = mysql_num_rows($res); 

if($count == 1) 
{ 
    echo "Fail"; 
} 
else 
{ 
    $_SESSION['email'] = $email; 
    header("location:home3.php"); 
} 

?> 

表1から、私はセッションを使用している場合、電子メールを利用したいとそれを行う方法を表2にそれを保存したいですか?

+0

NOOOOOO OH !!!! MYSQ1を使用しないでください。代わりにmysqliを使用してください –

+0

$ email = $ _ SESSIOn ["email"] ??? –

答えて

0

$メール=(SESSIONからそれを取得する方法?)

第二のコードブロックは最初と同じ実行コンテキスト内にある場合、あなたはちょうどあなたが作成した変数$emailを使用することができます。あなたは、ユーザーが新しいページに移動すると、セッションからデータを取得しようとしている場合

、あなたは:ところで

<?php 
session_start(); 
$email = isset($_SESSION['email'])? $_SESSION['email'] : null; 

、第二のコードブロックにあなたがするmysql_num_rowsを使用しようとしていますクエリINSERTの影響を分析します。あなたはそれをすることはできません。 According to the manual

[mysql_num_rows]は、結果セットから行数を取得します。この コマンドは、実際の結果セット を返すSELECTまたはSHOWのようなステートメントに対してのみ有効です。 INSERT、UPDATE、REPLACEまたはDELETEクエリの影響を受ける行の数を取得するには、mysql_affected_rows()を使用します。

あなたはとにかく mysql_の機能を使用してすべきではない
$res = mysql_query($sql) or die(mysql_error()); 
if(mysql_affected_rows()){ 
    //success 
}else{ 
    //failure 
} 

、あなたが最も確かにあなたのSQL文で直接ユーザーに提供値(ユーザー名、電子メール、パスワード)を挿入すべきではない

+0

ありがとう.. :):D –

関連する問題