0

次のエラーが表示されます。

Warning: Illegal string offset 'approved' in C:... on line 137

Warning: Illegal string offset 'approved' in C:... on line 147

ただし、 print_r() で呼び出して取得できる値を確認します。

Array (
    [0] => 3
    [id] => 3
    [1] => 3
    [user_fk] => 3
    [2] => > Jailbot 2.0
    [title] => > Jailbot 2.0
    [3] => 1
    [approved] => 1
) 

では、承認された通話を許可しないのはなぜですか?

PHP:

$avatarQuery = "SELECT * FROM avatars WHERE user_fk = {$id} LIMIT 1";
$avatarSet = mysql_query($avatarQuery, $connection);
confirm_query($avatarSet);
$count = mysql_num_rows($avatarSet);
if($count == 1){
    $avatar = mysql_fetch_array($avatarSet);
    $avatar = $avatar['picture'];
    $avatarApproved = $avatar['approved'];
}else{
    $avatar = "images/noImage.png";
}
$titleQuery = "SELECT * FROM titles WHERE user_fk = {$id} LIMIT 1";
$titleSet = mysql_query($titleQuery, $connection);
confirm_query($titleSet);
$title = mysql_fetch_array($titleSet);
$title = $title['title'];
$titleApproved = $title['approved'];
4

1 に答える 1

2
$avatar = $avatar['picture'];
$avatarApproved = $avatar['approved'];

1 行目は $avatar を $avatar['picture'] の値で上書きするため、2 行目を実行すると $avatar は配列ではなくなります。後続のクエリ結果で $title を使用して同じことを行っています

于 2013-01-30T17:37:43.197 に答える