2017-07-11 5 views
-1

私のデータベースに挿入しようとしています。クエリをMySQL Workbenchに貼り付けてみましたが、動作しますが、ページを実行しても動作しません。クエリはデータベースに挿入されません

echo "<b>DISTRICT</b></br>"; 
echo "crime volume : " . $crimeVolume. "<br>"; 
echo "population : " . $population. "<br>"; 
echo "crime rate : " . $crimeRate=round(($crimeVolume/($population/100000)),2) . " <br>"; 
echo "crime efficiency/crime clearance efficiency : " . $efficiency=($SolvedCases/$crimeVolume) ." <br>"; 
echo "use of force : " . $useofForce . " incidents<br>"; 
echo "drug seizures : " . $numdrug . " (grams/seizures)<br>"; 
echo "firearm seizures : " . $firearmSeizures=round(($numfire/$stationFire),2) . " <br>"; 
echo "<br>"; 
require_once('../../mysqlConnector/mysql_connect.php'); 
$query2= "INSERT INTO computation (crimeVolume,crimeRate,crimeSolutionEfficiency,useofForce,drugSeizures,firearmsSeizures,stationID) 
VALUES ('{$crimeVolume}','{$crimeRate}','{$efficiency}','{$useofForce}','{$numdrug}','{$firearmSeizures}','0');"; 
echo $query2; 
$result=mysqli_query($dbc,$query2); 
echo $result; 
+1

$ dbcはどこから来ますか?あなたは完全なコードを投稿できますか? –

+2

あなたはSQLインジェクションのために広くオープンしています。 mysqliを使用しているので、[prepared statements](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)と[bind_param](http://php.net/ manual/en/mysqli-stmt.bind-param.php)。 **これはあなたが持っているかもしれない厄介な引用問題を修正します**これは[mysqli_errors](http://php.net/manual/en/mysqli.error.php) – aynber

+0

<? php $ dbc = mysqli_connect( 'localhost'、 'username'、 'password'、 'database'); if(!$ dbc){ die( '接続できませんでした:' .mysql_error()); } ?> これは$ dbcです! –

答えて

-1

この例は、データベース接続の詳細を設定してみてください。完全に動作するはずです。

<?php 
$con=mysqli_connect("localhost","my_user","my_password","my_db"); 
// Check connection 
if (mysqli_connect_errno()){ echo "Failed to connect to MySQL: " . mysqli_connect_error(); } 

// Perform query 
$result mysqli_query($con,"INSERT INTO computation (crimeVolume,crimeRate,crimeSolutionEfficiency,useofForce,drugSeizures,firearmsSeizures,stationID) 
VALUES ('".$crimeVolume."','".$crimeRate."','".$efficiency."','".$useofForce."','".$numdrug."','".$firearmSeizures."','0')"); 

// Print result 
print_r($result); 

// Close connection 
mysqli_close($con); 
?> 

これは最終的な解決方法ではないことに注意してください。適切なCLASSを使用する方がよいでしょう。 (なぜフレームワークではないのですか?)

私はあなたのケースを助けることを望みます。

+0

教えてください/粗雑で危険なコードの慣行を伝播することに潮を回してください。準備ができていない文章を投稿した場合[投稿する前にこれを考慮する](http://meta.stackoverflow.com/q/344703/)。さらに[もっと貴重な答えは、正しい方法をOPに示すことから来ている](https://meta.stackoverflow.com/a/290789/1011527)。 –

関連する問題