Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > สอบถามแนวทางการกำหนดเส้นทางของภาพเพื่อให้ภาพแสดงขึ้นมาครับ



 

สอบถามแนวทางการกำหนดเส้นทางของภาพเพื่อให้ภาพแสดงขึ้นมาครับ

 



Topic : 136208



โพสกระทู้ ( 144 )
บทความ ( 0 )



สถานะออฟไลน์




Code (PHP)
/* start path of student pictures in localhost */
/*$filename = '/appserv/www/behavior/images/'.$_SESSION["strStudentID"][$i] . '.jpg'; */

$filename = '/htdocs/behavior/images/'.$_SESSION["strStudentID"][$i] . '.jpg';



if (file_exists($filename)) {
   	$img = "/behavior/images/".$_SESSION["strStudentID"][$i].".jpg";
} else {
     $img = "/behavior/images/default.png";
}
			?>


ภาพในเครื่องที่ลง AppServ ใน localhost ภาพแสดงขึ้นมาปกติ
แต่พอเปลี่ยน path แล้วนำขึ้น Server ภาพไม่แสดง
พอจะมีคำแนะนำไหมครับ



Tag : PHP, Appserv, XAMPP









ประวัติการแก้ไข
2021-06-19 16:05:57
2021-06-19 17:47:01
2021-06-19 17:48:40
2021-06-19 17:49:01
2021-06-19 17:49:20
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2021-06-19 15:59:39 By : ajsudkedt View : 682 Reply : 12
 

 

No. 1



โพสกระทู้ ( 296 )
บทความ ( 0 )



สถานะออฟไลน์


ยึดไฟล์นี้เป็นหลัก

Code (PHP)
$filename = dirname(__FILE__) . '...';







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-19 18:38:22 By : TheGreatGod_of_Death
 


 

No. 2



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



สถานะออฟไลน์


ถ้ามันต้องมาตามแก้ path เวลาเปลี่ยน server ทีหนึ่งก็ปวดหัวตายชัก
พยายามทำความเข้าใจ __DIR__ แล้วใช้ตัวนี้อ้างอิงจากตำแหน่งปัจจุบัน หรือใช้ค่าคงที่กำหนดจากไฟล์แรกที่เรียก เช่น
Code (PHP)
<?php

// index.php

if (!defined('ROOT_PATH')) {
    define('ROOT_PATH', __DIR__);
}

require 'sub-files.php';



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-19 19:02:09 By : mr.v
 

 

No. 3



โพสกระทู้ ( 144 )
บทความ ( 0 )



สถานะออฟไลน์


เป็น Server เช่าครับ
upload ผ่าน filezilla
พอจะมีวิธีตรวจ path ที่ upload ผ่าน filezilla ไหมครับ
ว่า path คืออะไร
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 11:54:34 By : ajsudkedt
 


 

No. 4



โพสกระทู้ ( 2,311 )
บทความ ( 1 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 3 เขียนโดย : ajsudkedt เมื่อวันที่ 2021-06-20 11:54:34
รายละเอียดของการตอบ ::
echo ค่าออกมาดูครับ
Code (PHP)
if (!defined('ROOT_PATH')) {
    define('ROOT_PATH', __DIR__);
}
if (!defined('FILE_PATH')) {
    define('FILE_PATH', dirname(__FILE__));
}

echo 'ROOT_PATH => '.ROOT_PATH;
echo '<br>';
echo 'FILE_PATH => '.FILE_PATH;



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 13:20:00 By : arm8957
 


 

No. 5



โพสกระทู้ ( 1,994 )
บทความ ( 10 )



สถานะออฟไลน์
Facebook Blogger

ตรงนี้ควรเขียนใหม่ครับ

$filename = '/htdocs/behavior/images/'.$_SESSION["strStudentID"][$i] . '.jpg';


ตัวอย่างจากลิงค์
https://stackoverflow.com/questions/2820723/how-do-i-get-the-base-url-with-php
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 14:45:16 By : {Cyberman}
 


 

No. 6



โพสกระทู้ ( 144 )
บทความ ( 0 )



สถานะออฟไลน์


Code (PHP)
$filename = '/htdocs/behavior/images/'.$_SESSION["strStudentID"][$i] . '.jpg';

if (file_exists($filename)) {
   	$img = "/behavior/images/".$_SESSION["strStudentID"][$i].".jpg";
} else {
     $img = "/behavior/images/default.png";
}
			?>


ผมใส่ แบบนี้ขึ้นรูป default รูปจริงไม่ขึ้นครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 16:29:44 By : ajsudkedt
 


 

No. 7



โพสกระทู้ ( 144 )
บทความ ( 0 )



สถานะออฟไลน์


Code (PHP)
if (!defined('ROOT_PATH')) {
    define('ROOT_PATH', __DIR__);
}
if (!defined('FILE_PATH')) {
    define('FILE_PATH', dirname(__FILE__));
}

echo 'ROOT_PATH => '.ROOT_PATH;
echo '<br>';
echo 'FILE_PATH => '.FILE_PATH;


echo ค่าออกมาดูครับ
ทำยังไงครับ

Server ที่ใช้เป็น Server เช่าครับ
upload ผ่าน filezilla ครับ


ประวัติการแก้ไข
2021-06-20 16:54:09
2021-06-20 16:54:39
2021-06-20 16:56:19
2021-06-20 16:57:20
2021-06-20 16:57:39
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 16:53:07 By : ajsudkedt
 


 

No. 8



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



สถานะออฟไลน์


คุณทดลองสร้างไฟล์ขึ้นมาไฟล์หรือสองไฟล์ แล้วทดลองกับ __DIR__ และ __FILE__ รวมถึงอ่านคำสั่ง dirname() ให้เข้าใจก่อนดีกว่าว่าทั้งหมดมันคืออะไร อยู่ตรงไหนผลออกมาเป็นอย่างไร เรียกจากไฟล์ที่ถูก include แล้วเป็นอย่างไร อยู่ใน folder ย่อยจะออกมาเป็นอย่างไร
เอาให้มันเข้าใจว่ามันคืออะไรแล้วได้ผลยังไง มันไม่ยากเลยแค่ต้องขยันทดลองมากๆหน่อย ทดลองหลายๆแบบ

ถ้าไม่เข้าใจมันก็จะมึนๆอยู่อย่างเนี้ย ทั้งที่มันก็ไม่ยากขนาดนั้นหรอกแค่ทดลองเอาหน่อยนึง พอมันอ๋อออแล้วก็จะสามารถเทียบเคียงต่อไปได้เองว่าจากตำแหน่งที่เราเขียนมือ จะทำยังไงให้มันสัมพันธ์กับไฟล์ที่เรียกโดยไม่ต้องมานั่งแก้ทุกๆครั้งที่ย้าย server

อย่างคห.4เขาให้ทดลองเขียนแล้วเอาผลมาดู คุณลองแล้วได้ผลยังไงก็บอกไป จะไปถามทำไมทำยังไงหรือ server, upload filzilla ฯลฯ มันไม่เกี่ยวอะไร ก็แค่ทดลองทำตามที่เขาบอกแล้วเอาผลมาให้ดู หรือถ้าจะไปไวพลิกแพลงเองได้คล่องแคล่วในภายหน้า ก็อย่างที่ผมบอก ทดลอง-ทดสอบเล่น ให้มากๆหน่อย สร้างไฟล์ทดลองโดยเฉพาะเลย ลองจนกว่าจะเข้าใจจึงเอามาประยุกต์ใช้

https://www.php.net/manual/en/function.dirname.php dirname()
https://www.php.net/manual/en/language.constants.magic.php __DIR__, __FILE__, magic constant ทั้งหลาย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 18:56:30 By : mr.v
 


 

No. 9



โพสกระทู้ ( 9,587 )
บทความ ( 2 )



สถานะออฟไลน์


1 ที่ file index.php ไฟล์เริ่มต้น ของ เวป
ที่ ต้นไฟล์ บันทัดแรก
Code (PHP)
<?php
echo __DIR__; exit; 

รู้แตำแหน่งไฟล์ เริ่มต้น แล้วลบออก
----------------------------------------------------------
2 สร้าง file include กำหนด constant สำหรับ path ที่เกี่่ยวข้องใช้งาน ไว้ folder ที่เดียวกันกับ index.php
ตั้งขื่อไฟล์ว่า global_include.php หรือชื่ออะไรก็ได้ที่เข้าใจง่าย หรือ เข้าใจยาก ก็ว่ากันไป
Code (PHP)
<?php
defind('rootPATH', __DIR__);
defind('imagePATH', __DIR__ . DIRECTORY_SEPARATOR .'imagepath');
defind('uploadPATH',__DIR__ . DIRECTORY_SEPARATOR . 'uploadpath');

----------------------------------------------------------
3 ที่ file อื่นๆ ให้ทำการ include ไฟล์ที่สร้างนี้
Code (PHP)
<?php 
require_once 'path ที่ได้จากข้อ 1 ' . DIRECTORY_SEPARATOR . 'global_include.php';


ปล. __DIR__ เป็นคำสั่งที่ใช้แสดง path ของไฟล์ ที่แสดงโค๊ดนี้
ปล. อีกที จำไม่ได้ว่า มันเริ่มต้นใช้ ตั้งแต่ version ไหน ค้นหาเอาเองเด้อ
ถ้า php version ที่ใช้ ไม่ซับพอร์ต ก็ให้ใช้
define('__DIR__', dirname(__FILE__)); ก่อน
ทดลองก่อน นะว่า มันมี / ต่อท่ายไฟล์มาหรือเปล่า ไม่แน่ใจจำไม่ได้แล้ว น่าจะทดลองเองได้นะ


ประวัติการแก้ไข
2021-06-20 19:02:16
2021-06-20 19:06:55
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-20 18:59:02 By : Chaidhanan
 


 

No. 10



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



สถานะออฟไลน์


สมมุติว่าโครงสร้าง folder แบบนี้
/ (จะเรียกจากตรงนี้ว่า root)
|--main.php (/main.php)
|--a
|--|---aa (/a/aa)
|--|---|----file01.php (/a/aa/file01.php)


ถ้าหาก echo __DIR__; ที่ไฟล์ main.php มันจะได้ /path/ที่ติดตั้ง/(root) ซึ่งมีไฟล์ main.php อยู่

ถ้าหาก echo __DIR__; ที่ไฟล์ /a/aa/file01.php มันจะได้ /path/ที่ติดตั้ง/(root)/a/aa ซึ่งมีไฟล์ file01.php อยู่

การจะไต่ออกมาหาไฟล์ main.php จากตำแหน่งของไฟล์ file01.php จะต้องขึ้นไป 2 ระดับ. ถ้าหากเป็น php รุ่นเก่า (>5.2 && <7.0) จะต้องใช้ dirname(dirname(__DIR__)) แต่ถ้าหากเป็น php >= 7.0 จะใช้แบบนี้ได้เลย dirname(__DIR__, 2)
ค่าคงที่ __DIR__ จะไม่มี slash (/), backslash (\) ต่อท้าย จะต้องเขียนเพิ่มเอาเองไม่อย่างนั้นมันหาพาธไม่เจออีก.

ทีนี้มันก็วกกลับไปหาจขกท.อีก คือต้องลองว่าตำแหน่งที่จะเขียนมันอยู่ตรงไหน ไฟล์อยู่ตรงไหน จะไต่ขึ้นไต่ลงไปกี่ระดับ คนอื่นรู้ไม่ได้เพราะไม่ได้เปิด server, ftp เข้าไปดู.

อีกเรื่องที่สังเกตุ รูปที่เอาไปใช้หวังว่าคงไม่ได้เอาไปใส่ <img src="..."> เลย เพราะมาเป็น full path แบบนั้นเครื่องตัวเองอาจดูได้ แต่เครื่องคนอื่นดูไม่ได้ การใช้ URL รูปควรจะต้องเป็น http:// หรือ https:// หรือสั้นๆก็เริ่มต้นด้วย //.


ประวัติการแก้ไข
2021-06-21 00:23:30
2021-06-21 00:24:40
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-21 00:22:29 By : mr.v
 


 

No. 11



โพสกระทู้ ( 144 )
บทความ ( 0 )



สถานะออฟไลน์


แก้ปัญหาได้แล้วครับ
ขอบกราบขอบพระคุณ
ท่าน mr.v
ท่าน Chaidhanan
ท่าน คนธรรมดา ไม่พิเศษ
และทุก ๆ ท่านที่ช่วยชี้แนะ
ได้ความรู้ใหม่เพิ่มขึ้นเลยครับ
ขอบพระคุณจริง ๆ ครับ
เว็บบอร์ดนี้มีประโยชน์มาก ๆ ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-21 06:01:05 By : ajsudkedt
 


 
ไม่เข้าใจ root path
ไปเจอหลายๆ OS จบเลย!!!
เขียนอย่างไรโดยที่เขียนเสร็จแล้ว Deploy ได้เลย?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-06-21 09:05:40 By : Guest
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามแนวทางการกำหนดเส้นทางของภาพเพื่อให้ภาพแสดงขึ้นมาครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่