Bu MySQL sorgu ile yanlış ne?

6 Cevap php
$sql = "UPDATE site_ayarlar 
 SET site_baslik = '$_POST[site_baslik]',
  site_slogan = '$_POST[site_slogan]', 
  meta_desc = '$_POST[meta_desc]',
  meta_key = '$_POST[meta_key]',
  meta_auth = '$_POST[meta_auth]',
  meta_copy = '$_POST[meta_copy]', 
  meta_robots = '$_POST[meta_robots]' ";

ve hata

T_STRING veya T_VARIABLE veya T_NUM_STRING bekliyor, sözdizimi hatası, beklenmedik T_ENCAPSED_AND_WHITESPACE: hatası Ayrıştırma

GÜNCELLEME SABİT!

6 Cevap

Bu şekilde deneyin,

    $site_baslik = mysql_real_escape_string($_POST['site_baslik']);
    $site_slogan = mysql_real_escape_string($_POST['site_slogan']);
    $meta_desc = mysql_real_escape_string($_POST['meta_desc']);
    $meta_key = mysql_real_escape_string($_POST['meta_key']);
    $meta_auth = mysql_real_escape_string($_POST['meta_auth']);
    $meta_copy = mysql_real_escape_string($_POST['meta_copy']);
    $meta_robots = mysql_real_escape_string($_POST['meta_robots']);

    $sql = "UPDATE site_ayarlar 
        SET site_baslik = '$site_baslik' ,
          site_slogan = '$site_slogan', 
          meta_desc = '$meta_desc',
          meta_key = '$meta_key',
          meta_auth = '$meta_auth',
          meta_copy = '$meta_copy', 
          meta_robots = '$meta_robots' 

        WHERE some_condition
    ";

Bazı nerede koşul koymak vermezsek ve size aynı veri seti ile tüm db güncellenir

Burada ekstra alıntı:

'$_POST['meta_auth]'

Ve tabii ki:

$_POST[key_name] olmalıdır ".$_POST['key_name']."

$ Sql ​​= "UPDATE site_ayarlar SET site_baslik = '$ _POST [site_baslik]', site_slogan = '$ _POST [site_slogan]', meta_desc = '$ _POST [meta_desc]', meta_key = '$ _POST [meta_key]', meta_auth = ' $ _POST [meta_auth] ', meta_copy =' $ _POST [meta_copy] ', meta_robots =' $ _POST [meta_robots] '";

Eğer çift tırnaklı dizge içinde dizi değişken kullanılarak eğer bu {$ _POST ['meta']} gibi {} onları içine gerekir.

Jensgram Ama çekti, bu yaklaşım enjeksiyonları son derece savunmasızdır.

Sadece bir düşünce. Ben tek tırnak içine $ _POST kullanmak asla.