Хуудсыг ачаалж байна. Түр хүлээнэ үү.
loading...

PHP Бааз

Мэдээлэл оруулах функц
Мэдээлэл оруулах үйлдэл байнга хийгдэб байдаг. Уг коммандыг мөн мэдээлэл оруулах хуудас бүр дээрээ бичих нь сүүлд зарим нэг гаргасан алдаагаа засахаас ихсүүлээд бөөн ажил болно. Тиймээс нэг функц бэлдэж авчихаад түүнийгээ ашиглах замаар хийгээд явбал зүгээр. Иймээс та бүхэний ажлыг хөнгөвчилөх үүднээс мэдээлэл оруулах функцыг хүргэж байна.

Уг функцид элдэв янзын халдлагаас хамгаалаад дахин нэг функц ашиглая.

Код:
function mbm_sql_quote( $value )
    {
        if( get_magic_quotes_gpc() )
        {
              $value = stripslashes( $value );
        }
        //check if this function exists
        if( function_exists( "mysql_real_escape_string" ) )
        {
              $value = mysql_real_escape_string( $value );
        }
        //for PHP version < 4.3.0 use addslashes
        else
        {
              $value = addslashes( $value );
        }
        return $value;
    }


Уг функц нь ядаж наад захын sql injection халдагаас сэргийлнэ. Арга нь PHP-н тохиргооноос mysql_real_escape_string тохиргоог шалгаж уг тохиргооноос шалтгаалан ' тэмдэгтүүдийг  ' болгож хөрвүүлэх шаардлагатай эсэхийг шийднэ.

Одоо мэдээлэл оруулах функцыг танилцуулъя.

Код:
function mbm_insert_row($data,$tbl){
   
    $query = "INSERT INTO ".$tbl." ";
    $keys = "(";
    $values = "(";
    foreach ($data as $key=>$value){
        $keys .= "`".$key."`,";
        $values .= "'".mbm_sql_quote($value)."',";
    }
    $keys = substr($keys,0,-1).") ";
    $values = substr($values,0,-1).")";
    $query .= $keys." VALUES ".$values.";";
   
    if(!$result=mysql_query($query)){
        $return_result = 0;
    }else{
        $return_result = 1;
    }
    return $return_result;
}


Тайлбар:
$tbl  - Мэдээлэл оруулах хүснэгтний нэр
$data - Мэдээллүүдийг уг хувьсагчад ARRAY хэлбэрээр оноож өгнө. Түлхүүр нь баганы нэртэй ижил байна.

Ашиглах:

users хүснэгтийг id,username,password,lastname,firstname,registered_date,status гэх мэт баганатай байг гэж бодъё.

Код:
//$data['id'] = 8; // Энэ нүдийг автоматаар нэгээр нэмэгддэгээр тохируулах хэрэгтэй бөгөөд тэгж тохируулсан тохиолдолд ашиглах шаардлагагүй
$data['username'] =
$_POST['username'] ;
$data['password'] =
md5($_POST['pass'] ."salt");
$data['firstname'] = $_POST['firstname'] ;
$data['lastname'] = $_POST['lastname'];

$data['registered_date'] = date("Y-m-d");
$data['status'] = $_GET['st']; //Жишээ болгож $_GET ашиглав.

if(
mbm_insert_row($data,'users')==1){
     echo 'Нэмэгдлээ';
}else{
    echo 'Ямар нэгэн алдаа гарав.';
}


За хэн нэгэнд хэрэг болох байхаа гэж найдаж байна.
Үнэлэх
Нэвтрэнэ үү
Үнэлгээ (0)

Сэтгэгдэл үлдээх
Нэр
Сэтгэгдэл
Өмнөх сэтгэгдлүүд »