Nhờ mọi người giải thích cụ thể mysql_query 2008-02-28 11:48:40

Nhờ mọi người giải thích cho em rõ về mysql_query được ko ?
Hàm đó trả về cái gì vậy
Và hàm mysql_fetch_array nữa
Thanks

Tra loi 9 comment(s) quỷ đỏ 2008-02-28 11:48:40

gaulucky92 2008-02-29 12:03:06

Bạn mới bắt đầu học PHP sao? Vậy thì nên xem sách trước đã ^^
http://www.thegioiwebsite.net/ <-- học online
http://www.box.net/shared/l9i61bis0i <-- tải sách học php (tiếng Việt)

mysql_query là 1 hàm (phải là hàm ko nhỉ? ^^) trong php giúp ta thực hiện được các lệnh quản lí trong mysql database (cơ sở dữ liệu) thông qua các câu lệnh mà ko cần phải vào phpMyAdmin (trang quản lí database) để chỉnh sửa.
VD thế này, bạn vào phpMyAdmin để xóa 1 record nào đó trong table, thông thường thì browse table đó rồi chọn xóa record tương ứng... Với mysql_query thì đơn giản hơn, chỉ cần nhét đoạn mã sau vào file php, sau đó chạy file php này thì record được chọn sẽ bị xóa:
mysql_query("DELETE FROM bang WHERE ten = 'vidu'");

Trong code trên thì ta sẽ xóa được hàng có "ten" là "vidu" trong table "bang"...
mysql_fetch_array là hàm gọi giá trị trong table ra và gán nó vào 1 biến. VD:
- Trong db bạn có table "bang" với field "ten", trong đó có 5 records (rows - hàng) với giá trị của "ten" lần lượt gồm: A,B,C,D,E.
- Trong file php sau khi kết nối với database, bạn ghi đoạn mã sau:
while ($row=mysql_fetch_array(mysql_query("SELECT ten FROM bang")))
{
echo $row['ten'];
}

Khi chạy file php này trên trình duyệt bạn sẽ thấy nó hiện ra "ABCDE"...

Nói chung bạn nên tìm hiểu kĩ php, mysql và mối wan hệ giữa chúng đã, chứ bảo giải thích thì... T_T

@gaulucky92

quỷ đỏ 2008-02-29 10:35:24


Bác nhầm rồi , cái hàm đó dùng thế nào thì em hiểu rồi . còn PHP thì cũng tàm tạm .
Em thắc mắc thế này
<?php
//day la class cua module members

class Member
{
//Ket noi CSDL
public function connect($server,$user,$pass,$db)
{
mysql_connect($server,$user,$pass) or die("vi sao anh die");
mysql_select_db($db);
}
public function
query($query_string)
{
if(
$sql=mysql_query($query_string))
return
$sql;
else return
"error";
}
?>

Các bác để ý hàm public function query($query_string)
Khi sử dụng thì mysql_query($string) sẻ trả về là giá trị gì .
Nói hơi khó hiểu , tóm lại là các bác chỉ cho em cách dùng hàm query trong class Member cái
$Mem=new Member();
$thanhvien=$Mem->query($string);
ở đây $string là câu lệnh insert chẳng hạn . Vậy thì biến $thanhvien sẽ nhận giá trị gì ? Thanks

@quỷ đỏ

hoangcn02 2008-02-29 10:46:48

Xem ở php.net đi bạn, có giải thích rõ đó :-)
"For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.
For other type of SQL statements, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.
"

@hoangcn02

cocbay 2008-02-29 10:55:15

Link tham khảo nè:
http://vn.php.net/manual/en/function.mysql-query.php
Tạm dịch:
Khi thực hiện SELECT, SHOW, DESCRIBE, EXPLAIN và các câu truy vấn khác có trả về kết quả thì mysql_query() sẽ trả về "resource" nếu thành công, còn không thì trả về FALSE.
Còn các lệnh như UPDATE, DELETE, DROP, và các hàm thự thi đại loại giống thế thì trả về TRUE nếu thành công và FALSE nếu ngược lại.

Còn hàm query trong class Member của bạn thì trả về resource, hay TRUE (kết quả của biến $sql) nếu câu query thực hiện được (không lỗi), và ngược lại trả về chuỗi "error".

@cocbay

quỷ đỏ 2008-02-29 11:55:37

Cái đoạn return $sql là trả về chuỗi thế nào vậy hay là trả về true . Thanks

@quỷ đỏ

TG 2008-02-29 12:55:10

return $sql là Resource hoặc true hoặc false tùy theo câu query và thực hiện thành công hay không( các trường hợp cụ thể thì cocbay đã nói), tham khảo: các kiểu dữ liệu của PHP

@TG

PN 2012-04-05 21:58:24

The mysql_query() function executes a query on a MySQL database.

This function returns the query handle for SELECT queries, TRUE/FALSE for other queries, or FALSE on failure.

@PN

spyphone 2014-04-26 12:33:36

@spyphone

Quoc nhat 2017-06-14 05:10:05

Mình muốn lấy giá trị của 1 cột đưa vào 1 mảng thì làm thế nào nhỉ. Thanks

@Quoc nhat

Reply