*---* ช่วยด้วยมีปัญหาในการ include ครับ *---* ผมใช้คำสั่ง include_once เพื่อเรียนส่วนต่างๆของเว็บให้ม
ผมใช้ Dreamweaver CS3 สร้าง root อ่าครับ
พอไปดู link รูปปรากฏว่ามัน link ผิดอ่าครับ
http://localhost/theme-1/images/theme-1_10.gif *** link ผิดรูปไม่ขึ้นมา
http://localhost/TV_Channel/theme-1/images/theme-1_10.gif *** แบบนี้รูปจะขึ้นมา
ต้องแก้ยังไงดีครับ
Date :
2009-07-29 17:26:39
By :
trojan983
^
^
^
error อ่าครับ
Warning : include_once(../frame/head.php) [function.include-once]: failed to open stream: No such file or directory in C:\AppServ\www\TV_Channel\index.php on line 29
Warning : include_once(../frame/left.php) [function.include-once]: failed to open stream: No such file or directory in C:\AppServ\www\TV_Channel\index.php on line 38
Date :
2009-07-29 17:56:43
By :
trojan983
Code (PHP)
<? include_once('frame/head.php'); echo ""; ?>
Date :
2009-07-29 18:05:45
By :
danya
^
^
^
ลองแก้ดูแล้วเป็นเหมือนตอนแรกอ่าครับ รูปไม่ขึ้นเหมือนเดิม
Date :
2009-07-29 18:13:09
By :
trojan983
คลิกขวาที่รูปแล้วดูว่า url จริงของรูปมันเป็นแบบไหนแล้วเอามาโพสต์ ผมว่าคุณเข้าใจเรื่อง path ผิด
Date :
2009-07-29 18:41:12
By :
plakrim
ถ้ามันเจอไฟล์แล้ว นั้นคือถุกต้อง
ส่วนรุป ต้องใส่ URL ไม่ไช่ PATH นะครับ
URL คือ http://localhost/
PATH คือ C:\AppServ\www
Date :
2009-07-29 19:00:41
By :
danya
เอา ข้อมูล dir มาดูคับ
Date :
2009-07-29 19:05:34
By :
pjgunner
โทษทีผมไม่รู้เรื่องอะไรมากมายนักเพราะว่าผมหัดทำเวบด้วยตนเองยังไม่เก่งเท่าไรเลย ช่วยแนะนำด้วยนะครับ
ไฟล์ index.php อยู่ที่
C:\AppServ\www\TV_Channel\index.php
โค๊ด index.php
Code (PHP)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/1.dwt" codeOutsideHTMLIsLocked="false" --><head>
<!-- InstanceBeginEditable name="doctitle" -->
<title></title>
<!-- InstanceEndEditable -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="css/style.css" type="text/css" />
<!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable -->
</head>
<body>
<div class="bgbottom">
<div class="linebg" align="center">
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td align="center"><table width="900" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="2%"><img src="theme-1/images/theme-1_04.gif" width="20" height="20" /></td>
<td width="98%" background="theme-1/images/theme-1_05.gif"></td>
<td width="0%"><img src="theme-1/images/theme-1_07.gif" width="20" height="20" /></td>
</tr>
<tr>
<td background="theme-1/images/theme-1_09.gif"></td>
<td bgcolor="#FFFFFF"><table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><? include_once('frame/head.php'); echo ""; ?></td>
</tr>
<tr>
<td valign="top"> </td>
</tr>
<tr>
<td valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="14%" align="left" valign="top"><? include_once('frame/left.php'); echo ""; ?></td>
<td width="86%"><div class="leftpx">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><!-- InstanceBeginEditable name="EditRegion3" -->EditRegion3<!-- InstanceEndEditable --></td>
</tr>
</table>
</div></td>
</tr>
</table></td>
</tr>
</table></td>
<td background="theme-1/images/theme-1_12.gif"></td>
</tr>
<tr>
<td><img src="theme-1/images/theme-1_27.gif" width="20" height="20" /></td>
<td background="theme-1/images/theme-1_28.gif"></td>
<td><img src="theme-1/images/theme-1_30.gif" width="20" height="20" /></td>
</tr>
</table></td>
</tr>
</table>
</div>
</div>
</body><!-- InstanceEnd --></html>
ไฟล์ที่ include เข้ามาอยู่ที่
I:\AppServ\www\TV_Channel\frame\head.php
I:\AppServ\www\TV_Channel\frame\left.php
โค๊ดของ head.php
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<table width="100%" height="19" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><div align="left"><img src="../theme-1/images/theme-1_10.gif" width="337" height="73" /></div></td>
</tr>
<tr>
<td bgcolor="#616CD6"> </td>
</tr>
</table>
</body>
</html>
โค๊ดของ left.php
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<table width="191" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><img src="../theme-1/images/theme-1_19.gif" width="191" height="11" /></td>
</tr>
<tr>
<td><img src="../theme-1/images/theme-1_21.gif" width="191" height="28" /></td>
</tr>
<tr>
<td><img src="../theme-1/images/theme-1_22.gif" width="191" height="12" /></td>
</tr>
<tr>
<td><img src="../theme-1/images/theme-1_23.gif" width="191" height="79" /></td>
</tr>
<tr>
<td bgcolor="#DFE2FF"><table width="100%" border="0" cellpadding="0" cellspacing="3">
<tr>
<td><p>1</p>
<p>1</p>
<p>1</p>
<p>5</p>
<p>6</p></td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td></td>
</tr>
</table>
</body>
</html>
ไฟล์รูปอยู่ที่
I:\AppServ\www\TV_Channel\theme-1\images
คลิกขวาดูที่รูปแล้ว url มันเป็นแบบนี้ครับ
http://localhost/theme-1/images/theme-1_10.gif *** link ผิดรูปไม่ขึ้นมา
แทนที่จะเป็นแบบนี้
http://localhost/TV_Channel/theme-1/images/theme-1_10.gif *** แบบนี้รูปจะขึ้นมา
Date :
2009-07-29 20:23:51
By :
trojan983
^
^
^
แก้ข้างบนพิมพ์ผิดโทษทีครับ
ไฟล์ index.php อยู่ที่
C:\AppServ\www\TV_Channel\index.php
ไฟล์ที่ include เข้ามาอยู่ที่
C:\AppServ\www\TV_Channel\frame\head.php
C:\AppServ\www\TV_Channel\frame\left.php
ไฟล์รูปอยู่ที่
C:\AppServ\www\TV_Channel\theme-1\images
Date :
2009-07-29 20:27:20
By :
trojan983
../theme-1 เอา ../ ออก
Date :
2009-07-29 22:36:03
By :
plakrim
น่าจะผิดที่การเรียก path ที่เก็บรูปนะครับ กรณีที่อยู่คนละ level ลองทำตามนี้ดูนะครับ
- กำหนดไฟล์ config.inc.php
Code (PHP)
<?php
$site_name = "http://".$_SERVER['HTTP_HOST']."/TV_Channel"; //กรณี ในเครื่อง
/*
$site_name = "http://".$_SERVER['HTTP_HOST']; // กรณีบน host
*/
?>
- include ไฟล์ config.inc.php เช้าทุกไฟล์
Code (PHP)
<?php
include_once("config.inc.php");
?>
- เวลาเรียกใช้ก็ จะเป็นการเรียก path เต็ม ไม่ว่าอยู่ใน level ไหนก็ไม่มีปัญหาครับ
<img src="<?=$site_name?>/theme-1/images/theme-1_19.gif" border="0">
Date :
2009-07-29 22:42:25
By :
ICrazyBoy
ขอบคุณครับ คุณ ICrazyBoy?
ตอนนี้ทำได้แล้วครับ ขอบคุณมากๆครับ
หามีปัญหาจะมาถามอีกนะครับ
Date :
2009-07-29 22:55:17
By :
trojan983
ยินดีครับ ถ้าผมตอบได้ก็ตอบครับ...55+ สู้ๆ ครับ
Date :
2009-07-29 23:01:10
By :
ICrazyBoy
ตามพี่ปลากริมบอก ก็ได้แล้วครับ
ดีใจด้วย อิอิ
../images
/images
images
../../images
4 อันนี้ ไม่เหมือนกัน
อันแรก จะเรียก folder ข้างนอก ไป 1 Directory
อันที่สอง บังคับให้อยู่นอก ROOT ซึ่งไม่แน่ะนำครับ
อันที่สอง กรณี images อยู่ใน ที่เดียวกับ file ที่เรียกใช้งาน เช่น index.php folder image ต้องอยู่ที่เดียวกับ index.php จึงจะเรียกแสดงมาได้
อันสุดท้าย จะเรียก folder ข้างนอก ไป 2 Directory
Date :
2009-07-29 23:02:18
By :
danya
ขอถามอีกรอบครับ ผมใส่โค๊ดแบบนี้แล้วมัน error อ่ะครับ ทำไงดีครับ
<? include_once('$site_name/frame/left.php'); echo ""; ?>
Date :
2009-07-30 21:21:35
By :
trojan983
error ว่าอะไรละครับ error มีเป็นร้อยเป็นพันใครจะมั่วถูกเนี้ย
Date :
2009-07-30 21:23:09
By :
plakrim
แก้ได้แล้วครับ ไม่รู้ว่าใช้แบบนี้จะมีปัญหาไรป่าว
<? include_once(dirname(__FILE__).'/frame/head.php'); echo ""; ?>
เผอิญไปเจอกระทู้นี้มา
https://www.thaicreate.com/php/forum/022556.html
Date :
2009-07-30 21:41:44
By :
trojan983
Load balance : Server 01