Page 1 of 2

การใช้ iis กับ mysql

Posted: 07/10/2007 6:13 pm
by buatong
ตอนแรกใช้ server1 โดยลง appserv ก็ run php connect mysql ได้ปกติ
พอย้าย code มาไว้ที่ server2 ที่มี iis และ php อยู่ก่อนแล้ว ก็เลยต้องแก้ config ใหม่ ส่วน mysql ก็ลงโดยใช้ appserv ตามปกติ (ลงเฉพาะ mysql) อยากทราบว่า ต้องแก้ config อะไรบ้างค่ะ อย่างไรบ้าง เพราะตอนนี้ run code php ได้ (จากเมื่อก่อนขึ้นหน้า blank) แต่ไม่ connect กับฐานข้อมูลให้ค่ะ และพอลองรันตัว code ด้านล่าง เพื่อ check ดูว่า connect ได้ไหม ก็ขึ้นแต่หน้าว่างค่ะ

<?PHPsession_start();ob_start(); class Data_Mysql{ var $result; var $sql; var $querysql; var $num; var $massage_send; var $massage_error; var $Hostname="localhost";#Hosting of Database System var $Uname="root";#Username Database System var $Pname=""; #Password Database System var $Dname="dbname"; #Database Name System function ConnectionMysql($user,$pass,$idcard,$posit,$depart,$gover){ if($this->Conn_mysql()){ if($this->Conn_database()){ if($this->SQLS_Member($user,$pass,$idcard,$posit,$depart,$gover)){ #if($this->SQLS_Menu($user,$pass)){ $this->massage_send=1; #}else{ #$this->massage_send="<div align='center' style='color:#FF6600'>ไม่พบสิทธิ์ขอท่านจากการเรียกใช้ของระบบ กรุณาติดต่อเจ้าหน้าที่ผู้เกี่ยวข้อง</div>"; #} }else{ $this->massage_send="<div align='center' style='color:#FF6600'>ท่านกรอก Username หรือ Password ไม่ถูกต้อง กรุณาตรวจสอบข้อมูลอีกครั้ง</div>"; } }else{ $this->massage_send="ไม่สามารถใช้ฐานข้อมูล Mysql ได้"; } }else{ $this->massage_send="ไม่สามารถเชื่อมต่อกับระบบฐานข้อมูล Mysql ได้"; } return $this->massage_send; } function Conn_mysql(){ $this->result=mysql_connect($this->Hostname,$this->Uname,$this->Pname); return $this->result; } function Conn_database(){ $this->result=mysql_select_db($this->Dname,$this->Conn_mysql()); return $this->result; } function SQLS_Member($user,$pass,$idcard,$posit,$depart,$gover){ $this->sql=" SELECT"; $this->sql.=" A.intronameID";#0 $this->sql.=" ,A.username";#1 $this->sql.=" ,A.password";#2 $this->sql.=" ,A.orgID";#3 $this->sql.=" ,A.ruleid";#4 $this->sql.=" ,B.NAME_TH";#5 $this->sql.=" ,B.NAME_EN";#6 $this->sql.=" ,C.SERIAL_NO";#7 $this->sql.=" ,C.ORG_CODE";#8 $this->sql.=" ,C.ORG_LEVEL";#9 $this->sql.=" ,C.ORG_NAME";#10 $this->sql.=" ,C.FULL_NAME";#11 $this->sql.=" ,C.ORG_ABBR_NAME";#12 $this->sql.=" ,C.FULL_IN_ABBR_NAME";#13 $this->sql.=" ,C.ROOT_LEVEL1";#14 $this->sql.=" ,C.ROOT_LEVEL2";#15 $this->sql.=" ,C.ROOT_LEVEL3";#16 $this->sql.=" ,C.ROOT_LEVEL4";#17 $this->sql.=" ,C.ROOT_LEVEL5"; #18 $this->sql.=" FROM member A"; $this->sql.=" INNER JOIN introname B"; $this->sql.=" ON intronameID=B.INID"; $this->sql.=" INNER JOIN org_level C"; $this->sql.=" ON A.orgID=C.SERIAL_NO"; $this->sql.=" WHERE A.username='$user' AND A.password='$pass' AND C.STATUS='A' AND A.idcardID='$idcard' AND C.ROOT_LEVEL1='$gover' AND C.ROOT_LEVEL2='$depart' AND C.ORG_CODE='$posit' "; $this->result=mysql_db_query($this->Dname,$this->sql); if($Member_Value=mysql_fetch_array($this->result)) { $_SESSION['session_innameid']=$Member_Value[0]; $_SESSION['session_user']=$Member_Value[1]; $_SESSION['session_pass']=$Member_Value[2]; $_SESSION['session_orgid']=$Member_Value[3]; $_SESSION['session_rule']=$Member_Value[4]; $_SESSION['session_intro_name']=$Member_Value[5]; $_SESSION['session_org_serial']=$Member_Value[6]; $_SESSION['session_org_code']=$Member_Value[7]; $_SESSION['session_org_level']=$Member_Value[8]; $_SESSION['session_org_name']=$Member_Value[10]; $_SESSION['session_org_name_full']=$Member_Value[11]; $_SESSION['session_org_abbr_name']=$Member_Value[12]; $_SESSION['session_org_abbr_name_full']=$Member_Value[13]; $_SESSION['session_root_level_1']=$Member_Value[14]; $_SESSION['session_root_level_2']=$Member_Value[15]; $_SESSION['session_root_level_3']=$Member_Value[16]; $_SESSION['session_root_level_4']=$Member_Value[17]; $_SESSION['session_root_level_5']=$Member_Value[18]; $_SESSION['session_signin']=true; $this->result=true; }else{ session_unregister($_SESSION['session_user']); session_unregister($_SESSION['session_pass']); session_unregister($_SESSION['session_signin']); $this->result=false; } return $this->result; } function SQLS_FormApp($user,$pass){ $this->sql="SELECT B.name,B.module FROM member A INNER JOIN B ON A.id=B.memberid WHERE A.username='$user' AND A.password='$pass'"; $this->result=mysql_db_query($this->Dname,$this->sql); if($FormApp_Value=mysql_fetch_array($this->result)) { $_SESSION['session_formapp']=$FormApp_Value[1]; $this->result=true; }else{ session_unregister($_SESSION['session_formapp']); $this->result=false; } return $this->result; } function SQLS_Menu($rule){ $this->sql="SELECT distinct B.menu_name,B.menu_module,B.menu_file FROM authen A INNER JOIN menu B ON A.menuid=B.menu_id WHERE A.rule_id=$rule"; $this->result = mysql_db_query($this->Dname,$this->sql); return $this->result; } function SQLS_SubMenu($rule){ $this->sql="SELECT B.submenu_name,B.submenu_file FROM authen A INNER JOIN submenu B ON A.submenuid=B.submenuid WHERE A.rule_id=$rule"; $this->result = mysql_db_query($this->Dname,$this->sql); return $this->result; } }# End Class $fc_database=new Data_Mysql();?>

Posted: 07/10/2007 9:44 pm
by mindphp
ลงเพียงอย่าง เดียวโหลด mysql มาลงเองดีกว่าครับ
อย่างแรกให้ เช็ค ว่า รัน php ได้ปกติ หรือเปล่า
ถ้าได้ ลอง เช็ค ว่า เป็น เวอร์ชั่นอะไร ถ้าเวอร์ชั่น หลังจาก 4.3 มันจะไม่มี ส่วนของการติดต่อกับ mysql มาให้ เราต้องลงเพิ่มเอาเอง

Posted: 08/10/2007 10:29 pm
by buatong
PHP Version 5.1.6 ค่ะ แล้วที่ว่าต้อง download ส่วนที่ให้เพิ่มการติดต่อ mysql ต้องลงเพิ่มเอาเอง นี่คืออะไรค่ะแก้ไข config หรือ add เพิ่มอะไรหรือป่าวค่ะ

Posted: 08/10/2007 10:42 pm
by mindphp
ลองเช็ค ว่า ใน โฟสเดอ extensions มี php_mysql.dll หรือยัง

Posted: 08/10/2007 11:01 pm
by buatong
หมายถึงต้องไปดาวน์โหลด connecting to MYSQL from PHP เช่น php_5.2.0_mysql_5.0.27-win32 หรือเปล่า os เป็น window server 2003 ค่ะ

Posted: 08/10/2007 11:17 pm
by mindphp
ลองเช็ค ตามที่บอกหรือยังครับ เพราะ อาจจะมีอยู่ แล้ว แต่ ยังไม่ได้ เปิดใช้งานก็ ได้ แต่ถ้าเช็ค แล้วไม่เจอ ก็ ต้องโหลดมาเพิ่ม เองครับ

Posted: 10/10/2007 4:19 pm
by buatong
PHP มีอยู่แล้วค่ะ เป็น Version 5.1.6 เช็คแล้ว run php ได้ แต่ connect mysql ไม่ได้ ลองทำตาม www.t2.tph.go.th/php.html และ http://www.cmsthailand.com/docs/iis_php ... admin.html ใช่วิธีนี้หรือเปล่า ลองทำแล้วก็ไม่เกิด...เศร้า

Posted: 10/10/2007 4:37 pm
by mindphp
o Browser แสดง แบบ รูปสุดท้าย แสดงว่าเราทำถูกแล้ว คับ

วิธีการ Config ให้ PHP สามารถใช้ MySQL ได้

* ให้เราทำการ แก้ไขแฟ้ม php.ini ตรงบรรทัดที่เขียนว่า
o ;extension=php_mysql.dll ให้เรานำเครื่องหมาย ; ที่อยู่ข้างหน้าบรรทัดออก แล้วบันทึกลงข้อมูล
o ให้เราทำการ Copy แฟ้มข้อมูล ชื่อ php_mysql.dll ที่อยู่ใน Directory ของ \php\ext ไปไว้ที่ \Windows\System32
o ให้เราทำการ Copy แฟ้มข้อมูล ชื่อ libmysql.dll ที่อยู่ใน Directory ของ \php ไปไว้ที่ \Windows\System32

ตามนี้ ช่าย มั๊ยครับ แล้ว restart IIS หรือยังครับ