2016-08-11 2 views
0

Я строю проект с угловым и php, и я пытаюсь удалить строку из таблицы phpmyadmin, и у меня есть эта ошибка в php. может ли кто-нибудь проверить мой код?Объект класса stdClass не может быть преобразован в строку

<?php 
    header('Content-Type: text/html; charset=utf-8'); 
    $connect=mysqli_connect("localhost", "root", "", "hamatkin"); 

     include_once 'file.php'; 
    mysqli_query($connect,"SET character_set_client = utf8"); 
    mysqli_query($connect,"SET character_set_connection = utf8"); 
    mysqli_query($connect,"SET character_set_results = utf8"); 
    // Check connection 
    if (mysqli_connect_errno()) { 
     echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

    $data = json_decode(file_get_contents("php://input")); 


    $id = $data->id; 
    $del = "DELETE FROM file WHERE id=".$id; 

     mysqli_query($connect, $del); 

    $newURL = "/hamatkin/#/allPriceOffers"; 
    header('Location: '.$newURL); 
    ?> 

после использования var_dump ($ данные):

<pre class='xdebug-var-dump' dir='ltr'> 
<small>C:\wamp64\www\hamatkin\api\customers-tab\delete-priceOffer.php:43:</small> 
<b>object</b>(<i>stdClass</i>)[<i>2</i>] 
    <i>public</i> 'id' <font color='#888a85'>=&gt;</font> 
    <b>object</b>(<i>stdClass</i>)[<i>3</i>] 
     <i>public</i> 'created' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'2016-08-11 15:19:14'</font> <i>(length=19)</i> 
     <i>public</i> 'customer_id' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'85'</font> <i>(length=2)</i> 
     <i>public</i> 'full_name' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'אלכס שפירא'</font> <i>(length=19)</i> 
     <i>public</i> 'city' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'תל-אביב'</font> <i>(length=13)</i> 
     <i>public</i> 'phone' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'545928875'</font> <i>(length=9)</i> 
     <i>public</i> 'name' <font color='#888a85'>=&gt;</font> <small>string</small> <font color='#cc0000'>'קורות ×—×™×™×.zip'</font> <i>(length=46)</i> 
+1

В какой строке говорится об ошибке? – Ben

+0

Я думаю, что вы получаете null в переменной $ data только var_dump ($ data) и видите результат –

+0

@Ben on line: $ del = "DELETE FROM file WHERE id =". $ Id; – tanyaa

ответ

1

Попробуйте это:

$id = intval($data->id->customer_id); 

ли новый редактировать помощь?

+0

спасибо, но все тот же нет ошибок, но не удаляем – tanyaa

+0

@tanyaa Откуда вы хотите удалить, у вас есть несколько таблиц? Ваше поле базы данных - customer_id, если customer_id не является внешним ключом в таблице файлов вы делаете это неправильно. –

1
json_decode($data, true) 

смешанные json_decode (строка $ JSON [, BOOL $ доц = ложь [, Int $ глубина = 512 [, INT $ Варианты = 0]]])

РДЦ Когда TRUE, возвращенные объекты будут преобразованы в ассоциативные массивы.

См. Документ here.