2017-02-26 1 views
1

以下は私が作成したPHPファイルのコードです。`HTML`ログインフォームから` MySQL 'データベースのデータ再検索のために `PHP`にデータを渡す

<?php 
$db = mysqli_connect("127.0.0.1","root","toor","mylib") 
or die('Error connecting to MySQL server.'); 
?> 
<html> 
<head> 
</head> 
<h1>PHP connect to MySQL</h1> 
</body> 
</html> 


<?php 
$query = "SELECT * FROM book WHERE bookid IN (SELECT bookid FROM studentbook WHERE studid = 
$_POST['stuid'])"; 
mysqli_query($db, $query) or die('Error querying database.'); 
$result = mysqli_query($db, $query); 
$row = mysqli_fetch_row($result); 
foreach($row as $a) 
    print($a." "); 
?> 

さて、私はHTMLログインページからstudidを取得するために見て、値(studid)に対応するデータを取得するためにPOSTメソッドを使用してPHPファイルにそれを を渡していますがMySQLデータベースから、入力された - 私はmysqli_query()を使用することを意味します関数。

しかし、私は、私が上に示されているコードを実行しようとすると、私はError下に思い付いた:

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /opt/lampp/htdocs/connectivity.php on line 13

次に私を導いてください:

1)どのようにLogin pageから値を取得し、postメソッドを使用してPHP fileに渡しますか?

2)上記のエラーを修正するにはどうすればよいですか?

+1

[mysqli-queryで$ \ _ POST変数を使用する方法は? (php)](http://stackoverflow.com/questions/30360721/how-to-use-a-post-variable-in-an-mysqli-query-php) – mickmackusa

答えて

1

は、以下のコードが動作しなければならないホープとあなたのエラーが解決されるかもしれない、

<?php 
$db = mysqli_connect("127.0.0.1","root","toor","mylib") 
or die('Error connecting to MySQL server.'); 

/* get values from form */ 
$sid = $_REQUEST['stuid']; 

/* execute query */ 
$query = "SELECT * FROM book WHERE bookid IN (SELECT bookid FROM studentbook WHERE studid = '$sid')"; 
mysqli_query($db, $query) or die('Error querying database.'); 
$result = mysqli_query($db, $query); 
$row = mysqli_fetch_row($result); 
foreach($row as $a) 
    print($a." "); 
?> 

は今すぐログインページから、あなたのデータは$sid変数に格納さになるだろうし、クエリに補間されます。したがって、データベースが接続され、すべて正常に動作する場合は、$row配列に格納されている出力を見ることができます。

関連する問題