2016-05-25 5 views
0

Iは、データベーステーブルの行を更新しようとしました。ユーザが「はい」オプションを選択しますが、私はこのライン$queryOptionId = $wpdb->query($wpdb->prepare("UPDATE resume_databank SET = '$optionAnswer' WHERE id = %d", $optionId->id));更新データベーステーブルの行

でエラー

Notice: Trying to get property of non-object 

を取得するときにどのようにこの問題を解決するには?

PHP:多分

$result_position= $wpdb->get_results($wpdb->prepare("SELECT id, submit_time, last_name, first_name, middle_name, mobile_number, email, location, position, message, attachment_resume_id FROM resume_databank WHERE position= '" . $list_position . "' ORDER BY position ASC LIMIT $start,$end", OBJECT)); 

echo '<table>'; 
echo '<tr>'; 
$optionId = 0; 
echo '<th>Submit Time</th>'; 
echo '<th>Last Name</th>'; 
echo '<th>First Name</th>'; 
echo '<th>Middle Name</th>'; 
echo '<th>Mobile Number</th>'; 
echo '<th>Email</th>'; 
echo '<th>Location</th>'; 
echo '<th>Position</th>'; 
echo '<th>Message</th>'; 
echo '<th>Resume</th>'; 
echo '<th>Processed?</th>'; 
//foreach ($result_position as $record_s){ 
for ($i=0;$i < $totalPosition ;++$i){ 
$row = $result_position[$i]; 
//$optionId++; 
$optionId = $result_position[0]->id; 
echo '<tr>'; 
    echo '<td id="submit_time">' . $result_position[0]->submit_time . '</td>'; 
    echo '<td id="last_name">' . $result_position[0]->last_name . '</td>'; 
    echo '<td id="first_name">' . $result_position[0]->first_name . '</td>'; 
    echo '<td id="middle_name">' . $result_position[0]->middle_name . '</td>'; 
    echo '<td id="mobile_number">' . $result_position[0]->mobile_number . '</td>'; 
    echo '<td id="email">' . $result_position[0]->email . '</td>'; 
    echo '<td id="location">' . $result_position[0]->location . '</td>'; 
    echo '<td id="position">' . $result_position[0]->position . '</td>'; 
    echo '<td id="message">' . $result_position[0]->message . '</td>'; 
    echo '<td id="resumeFile'.$optionId.'"><a href=' . wp_get_attachment_url($result_position[0]->attachment_resume_id) . '>Download Resume</a></td>'; 
    echo '<td id="radioOption><label for="Yes">Yes</label> 
     <input type="radio" id="processedOptionYes'.$optionId.'" name="processedOption" value="Yes" onclick="proccessedCheck('.$optionId.',\'Yes\')"/> 
     <label for="No">No</label> 
     <input type="radio" id="processedOptionNo'.$optionId.'" name="processedOption" value="No" onclick="proccessedCheck('.$optionId.',\'No\')"/></td>'; 
echo '</tr>'; 
} 
echo '</table>'; 

if (isset($_POST['optionAnswer']) && $_POST['optionAnswer']){ 
    $optionId = $_POST['optionId']; 
    $optionAnswer = $_POST['optionAnswer']; 
    echo $optionId; 
    $queryOptionId = $wpdb->query($wpdb->prepare("UPDATE resume_databank SET = '$optionAnswer' WHERE id = %d", $optionId->id)); 
} 
+0

チェック更新クエリ 'ID =%dの」、$ optionId-ID));'一部 '$ optionId-id'が定義されていない – Saty

+0

構文が修正さが、エラー – User014019

+0

ポストラインがまだありますされます今 – Saty

答えて

1

と列NAを追加しようとする代わりに$optionId->id

$queryOptionId = $wpdb->query($wpdb->prepare("UPDATE resume_databank 
SET = '$optionAnswer' WHERE id = %d", $optionId->id)); 
^^^^^// missing column name 

$optionIdを使用私

$queryOptionId = $wpdb->query($wpdb->prepare("UPDATE resume_databank 
    SET COLUMN_NAME= '$optionAnswer' WHERE id = %d", $optionId)); 
// add your table column name in place of `COLUMN_NAME` AFTER SET 
+0

' $ wpdb->クエリ$ wpdb->は、更新がprocess_resume SET =をresume_databank"(準備します')セットした後、それは今大丈夫だ答え – User014019

+0

を更新しないデータベーステーブルの行は、列名を追加し、「($ optionId) "$ optionAnswer 'ID =%dの ' – Saty

+0

の私のコメントをチェックしますが、どのように私は、MySQLからの無線オプションに値を取得することができますか? – User014019

0
for ($i=0;$i < $totalPosition ;++$i) 

..

SET文の後に列名がありません
while ($row = mysql_fetch_assoc($result)) 
関連する問題