Monday, October 29, 2012

PHP : Oracle ORA-06550 Error แก้อย่างไรดี ???

ปัญหาข้อผิดพลาดของการเขียนโค้ด PHP Oracle นี้คือ ตอนเขียน ociparse ในส่วนที่เป็นคำสั่ง SQL ที่ CALL Procedure นั้นจะต้องไม่ขึ้นบรรทัดใหม่ครับ

Warning: ociexecute() [function.ociexecute]: ORA-06550: บรรทัด 1 คอลัมน์ 206: PLS-00103: พบสัญลักษณ์ "" เมื่อต้องการค่าต่อไปนี้: begin case declare end exception exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> << close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe สัญลักษณ์ "" ไม่ได้ประมวลผล in C:\AppServ\www\testtab\_get_payment_detail.php on line 25
ตัวอย่างคำสั่ง
$stmt = ociparse($conn,"begin tbb_management_pck.get_payment_detail(:in_receipt_id,:out_account_num,:out_invoice_num,:out_vat_mny,:out_inc_vat_mny,:out_wt_mny,:out_total_mny,:out_cursor1,:out_cursor2,:out_status,:out_exception); 
end;");
เมื่อแก้ไขแล้วโปรแกรมก็จะสามารถทำงานตามปกติ

Wednesday, October 3, 2012

วิธีการเซ็ต Virtual Host ใน Apache ที่ติดตั้งด้วย AppServ

1. แก้ไขไฟล์ C:\AppServ\Apache2.2\conf\httpd.conf
...
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
เอาเครื่องหมาย # หน้า Include conf/extra/httpd-vhosts.conf

2. เพิ่มไดเร็คทีฟ Directory ลงไปดังนี้
...
<Directory "D:/wpdev">
    Order allow,deny
    Allow from all
</Directory>
เสร็จแล้ว save ไฟล์ซะ

3. แก้ไขไฟล์ C:\AppServ\Apache2.2\conf\extra\httpd-vhosts.conf

เพิ่มข้อมูลลงไปดังนี้
...
<VirtualHost *:80>
    DocumentRoot  "D:/wpdev"
    ServerName wpdev
</VirtualHost>
เสร็จแล้วบันทึกไฟล์

4. แก้ไขไฟล์ C:\Windows\System32\drivers\etc\hosts (ไม่มีนามสกุลไฟล์) ดังนี้
...
127.0.0.1          wpdev
เสร็จแล้วบันทึกไฟล์

5. Restart Apache หรือถ้า Restart เครื่องไปเลย ฮิฮิ