2017-03-14 5 views
-5

私は簡単ですが、会社名で私のIDをどのように取得できるのでしょうか? 私はすべての名前が出てきますが、IDは出ていません。リストにある最後のIDのみを取得します 何ができますか?phpとmysqliのヘルプが必要です

+0

だから、 '$ dの[ 'ファーマを']'ユーザ名がありますか? – Loko

+0

はいそれはユーザー名であり、stedは場所です – tjumsen

答えて

0

問題は、複数の行が戻ってきて、ループごとに上書きされる1つの変数にIDを格納しているということです。

私はあなたが(uはOOの道を進んでいる場合)クラスを作成し、オブジェクト自体にアクセスすることができ、そこからリストに代わり

$sortedData = []; 

class Fotograf { 
    public $Id; 
    public $Firma; 
} 

// organiser 
foreach ($data as $d) 
{ 
    $obj = new Fotograf(); 
    $obj->Id = $d['id']; 
    $obj->Firma = $d['firma']; 
    $sortedData[$d['sted']][] = $obj; 
} 

ていることに加え、今とともにID変数を持って推薦しますPlace変数。今のようなアクセス:

// output 
foreach ($sortedData as $place => $userNames) 
{ 
    echo '<h3>' . $place . '</h3>'; 

    foreach ($userNames as $userName) 
    { 

     echo '<div><p><a href="fotograf.php?id='. $userName->Id .'"><strong>' . $userName->Firma . ' </strong></a></div>'; 
    } 

} 
+0

Notice:未定義の変数:/Applications/MAMP/htdocs/2017/mrfl/test.php 38行目 キャッチ可能な致命的なエラー:Fotografクラスのオブジェクトを文字列/Applications/MAMP/htdocs/2017/mrfl/test.php on line 38 – tjumsen

+0

はい、後で文字列としてオブジェクトを使用することはできません。オブジェクト変数にアクセスする必要があります。変数にアクセスする方法を反映するために私の答えを更新しました。 – Nullorado

+0

うわー。 D – tjumsen

0

更新してコードを:

foreach ($data as $d) 
{ 
$place = $d['sted']; 
//$id = $d['id']; this is unused variable 
$sortedData[$place] = array("username" => $d['firma'],"id"=>$d['id']); 
} 

// output 
foreach ($sortedData as $place => $userNames) 
{ 
    echo '<h3>' . $place . '</h3>'; 

    foreach ($userNames as $userName) 
    { 
    echo '<div><p><a href="fotograf.php?id='. $userName["id"] .'"><strong>' . $userName["username"] . ' </strong></a></div>'; 
    } 

} 
+0

私はこのエラーを受けました 警告:不正な文字列オフセット 'ID' /Applications/MAMP/htdocs/2017/mrfl/test.php 32行目 警告:不正な文字列オフセット 'firma' in /アプリケーション/ MAMP/htdocs/2017/mrfl/test.php on line 32 2' – tjumsen

関連する問題