2016-04-20 4 views
1

に/var/www/html/ech/user/actions/punish.phpで非オブジェクトのプロパティを取得しようとすること私は選手などに関するすべての情報を表示するために私のゲームサーバーのデータベースと対話することができます、私は選手を罰するし、データベースへの罰データをポストするフォームを作成しようとしていますが、フォーム お知らせを掲示するときイムは、このエラーを取得します:ここでお知らせ:だから私はゲームサーバーを持っていると私はエシェロンと呼ばれるPHPスクリプトを書いているライン24

ライン24に/var/www/html/ech/user/actions/punish.phpで非オブジェクトのプロパティを取得しようとしていることは私のコードで、任意のヘルプは大歓迎:)

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', 1); 
if (!empty($_POST["punishmenttype"])) { 
$punishmenttype = $_POST['punishmenttype']; 
$reason = $_POST['reason']; 
$duration = $_POST['duration']; 
$timescale = $_POST['timescale']; 
$time = time(); 

if ($timescale == 'minutes') { 
$duration = ($duration*60); 
} elseif ($timescale == 'hours') { 
$duration = ($duration*60*60); 
} elseif ($timescale == 'days') { 
$duration = ($duration*60*60*24); 
} elseif ($timescale == 'weeks') { 
$duration = ($duration*60*60*24*7); } 
$timeexpire = ($time+$duration); 

$sql = "INSERT INTO penalties (id, type, client_id, admin_id, duration, inactive, reason, data, time_add, time_edit, time_expire) 
VALUES ('NULL', '$punishmenttype', '586', '$echelonid', '$duration', '0', '$reason', '', '$time', '$time', '$timeexpire')"; 
$result = mysql_query($query); 
    echo "Error: " . $sql . "<br>" . $con->error; 
}else{ } 
?> 
<div id="container" class="actionstabcontainer"> 
<h4 align=center>Punish User</h4> 

<form method="POST" align="center"> 
<select name="punishmenttype"> 
<option value="Notice">Notice</option> 
<option value="Warning">Warning</option> 
<option value="Tempban">Tempban</option> 
</select> 

<input type="text" name="duration" class="punishtextbox" style="width:55px" placeholder="Duration"> 

<select name="timescale"> 
<option value="minutes">Minutes</option> 
<option value="hours">Hours</option> 
<option value="days">Days</option> 
<option value="weeks">Weeks</option> 
</select> 

<input type="text" name="reason" class="punishtextbox" style="width:140px" placeholder="Reason"> 
<input type="submit"> 
</form> 
</div> 
+0

どこに接続されていますか?あなたはあなたの接続に含まれていませんでした。 – aldrin27

+1

_that_codeの行24は 'else {}' ... – arkascha

+0

'$ con'を宣言した場所はどこですか?プラス、あなたの構文が必要SQLインジェクションに対して脆弱である - あなたはmysql_ *関数は、バージョン5.4で廃止されているので、あなたは[PDO](http://www.php.net/pdo)を使用して検討する必要がありますことを修正したら – Meathanjay

答えて

2

それが何らかの形で他の場所に含まれていない限り、あなたの$conは、定義されていないように見えます。 $conがこのページにアクセスできるように定義され、割り当てられていることを確認してください。

はまた、あなたが$sql変数でクエリを定義し、まだCAL mysql_query($query)$queryはどこに定義されていますか?

+0

それは他のところで定義されています:) – JonnyUK

+0

それは同じ範囲に含まれていませんし、それを使用する前に。このファイルで使用する直前に再定義し、エラーが解消したかどうかを確認してください。 – gmiley

+0

$ sql = "INSERT INTOのペナルティ(ID、タイプ、クライアントID、管理ID、期間、非アクティブ、理由、データ、時刻、時刻、時刻、時刻) VALUES( 'NULL'、 '$ punishmenttype'、 '586'、 '$ echelonid '、' $ duration '、' 0 '、' $ reason '、' '、' $ time '、' $ time '、' $ timeexpire ') "; $結果= mysql_query($クエリ); $ queryはどこですか?あなたはworng変数を使用しています –

関連する問題