sql >> Database teknologi >  >> RDS >> Mysql

Hvordan håndterer du ', enkelt citat i personnavne i php, javascript

Du gennemgår en masse rodet og fejltilbøjeligt arbejde med at tilføje strenge bare for at udlæse en javascript-variabel. Hvad du bør gøre i stedet er at bygge den datastruktur, du ønsker i PHP (en række arrays) og derefter bruge json_encode() at udsende en javascript-kompatibel bogstavelig. Alle citater og lignende vil automatisk blive escaped af indkoderen.

$itemOutput = array();
if(count($items)) {
    foreach($items as $item) {
        foreach($advisors as $key=>$advisor) {
            if($item['advisor']==$advisor['id']) {
                $ad=$advisor['last_name'];
            }
        }
        $active_icon = ($item['active']=='1'?'tick':'cross');
        $editlink = anchor('auth/admin/members/form/'.$item['id'],$this->bep_assets->icon('pencil'));
        $itemOutput[] = array(
            $item['first_name'],
            $item['last_name'],
            $item['email'],
            $item['parent_email'],
            $item['parent_email2'],
            $ad,
            $this->beep_assets->icon($active_icon),
            $editLink
        );
    }
}
echo "data.addRows(" . json_encode($itemOutput) . ");" ;

Hvis du har et objekt eller et associativt array, udsendes det som et javascript-objekt:

echo json_encode( 
    array( 'a'=>'aa', 'b'=>'bb'),
    array( 'c'=>'cc', 'd'=>'dd')
);
==> [{"a":"aa","b":"bb"},{"c":"cc","d":"dd"}]



  1. Reporting Services-tilladelser på SQL Server R2 SSRS

  2. Tilføj dage til nuværende dato fra MySQL med PHP

  3. Hvordan kan jeg starte PostgreSQL-server på Mac OS X?

  4. Lightswitch tillader ikke tilføjelse eller ændring af poster i MySQL