ถามเกี่ยว กับ php echo ตัวแปร

เริ่มโดย affoman, 11 พฤษภาคม 2012, 20:54:23

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

affoman



}else{
echo "
<br><br><br><br><center><img src='$webroot/images/viponly.png' /></center><br><br><br><br><br><br>";
}



พอดีว่า  echo มันแสดงผล เฉพาะพวก text image เฉยๆๆ
พอดีผมต้องการ แทรกตัวแปรไปในนี้ด้วยนะครับบ

ผมก้เลยเปลื่ยน ใหม่เป็น

}else{
?>
      <table width="100%" border="0" cellspacing="2" cellpadding="2">
        <tr>
          <td width="14%"><div align="center"><img class="show_images" src="<?=$webroot?>/movieposters/<?=$Result[poster];?>" /></div></td>
          <td width="86%" valign="top">
  <p><strong>ชื่อภาษาอังกฤษ : </strong><?=$Result[name_en];?><br /><strong>ชื่อภาษาไทย : </strong><?=$Result[name_th];?></p>
  <strong>เรื่องย่อ : </strong><?=$Result[content];?></td>
        </tr>
      </table>
<?
}


แสดงผลครับ ไม่ eror code แต่ว่า  แสดงแ่ต่ข้อความ  ตัวแปร  รูปภาพ ที่ดึงจาก sql  มันไม่ยอมโชว์เลยนะครับ ผมไม่รู้ว่าผมเขียน code ผิดส่วนใหญ่ หรือใช้คำสั่ง ผิด ยังไง รบกวนพี่ๆด้วยนะครับ
------------
อาจจะถามเยอะไปหน่อย....นะคับ ผมก้พยายามเรียรู้ไปเรื่อยๆๆ ไม่เข้าใจอะไรก็ขอตั้งกระทู้ถาม คงไม่ว่าผมนะคับ อิอิ

OFF

djoser

      <table width="100%" border="0" cellspacing="2" cellpadding="2">
        <tr>
          <td width="14%"><div align="center"><img class="show_images" src="<?=$webroot?>/movieposters/<?=$Result[poster];?>" /></div></td>
          <td width="86%" valign="top">
        <p><strong>ชื่อภาษาอังกฤษ : </strong><?=$Result[name_en];?><br /><strong>ชื่อภาษาไทย : </strong><?=$Result[name_th];?></p>
        <strong>เรื่องย่อ : </strong><?=$Result[content];?></td>
        </tr>
      </table>

ถ้าเปลี่ยนเป็น
Start
<img   src="<?=$webroot?>/movieposters/<?=$Result[poster];?>" />
Stop

เท่านี้ มันแสดงผลอะไรออกมาคะ แล้วถ้า คลิกขวาระหว่างกลาง Start และ Stop โดยใช้ Chrome เลือก Inspect element มัน Show Code อะไรบ้างคะ
     

ball6847

เอา error_reporting(E_ALL); ใส่ไว้ข้างบน แล้วจะเห็น error ครับ

We use Ubuntu.

[direct=http://ng-seo.sourcelab.xyz/]AngularJS SEO Experimental[/direct]

kungbest

อยู่ตรงที่ตัวแปร array คับ ไอเจ้า $Result[....]

ถ้าเราจะใช้ชื่อฟิลด์ ข้างในต้องเป็น string คับ ใส่ '

$Result['poster'] $Result['name_en'] $Result['name_en']

ถ้าจะใช้แถว ก็ใส่เป็นเลขแถวเริ่มจาก 0 $Result[0] $Result[1] $Result[2] $Result[..]

ลองดูคับผม  :wanwan020:

melodee

server ไม่รองรับการใช้งาน short tag รึป่าวครับ
ลองใช้ โค๊ดแบบเต็มๆ ดุ <?=$Result[name_en];?> เป็น <?php echo $Result[name_en];?>

affoman

อ้างถึงจาก: kungbest ใน 11 พฤษภาคม 2012, 21:58:59
อยู่ตรงที่ตัวแปร array คับ ไอเจ้า $Result[....]

ถ้าเราจะใช้ชื่อฟิลด์ ข้างในต้องเป็น string คับ ใส่ '

$Result['poster'] $Result['name_en'] $Result['name_en']

ถ้าจะใช้แถว ก็ใส่เป็นเลขแถวเริ่มจาก 0 $Result[0] $Result[1] $Result[2] $Result[..]

ลองดูคับผม  :wanwan020:


ขอบคุณมากครับ ตอนนี้ทำได้แล้วนะครับ

}else{

$sql = "SELECT * FROM movie WHERE id = '".$_GET["id"]."'";
$Query = mysql_query($sql);
while($Result = mysql_fetch_array($Query))
echo "
<br>
      <table width='100%' border='0' cellspacing='2' cellpadding='2'>
        <tr>
          ><div align='left'><img class='show_images' src='$webroot/movieposters/$Result[poster]' /></div>
          <td width='100%' valign='top'>
  <p><strong>ชื่อภาษาอังกฤษ : </strong>'$Result[name_en]'<br /><strong>ชื่อภาษาไทย : </strong>'$Result[name_th]'</p>
  <strong>เรื่องย่อ : </strong>'$Result[content]'</td>
        </tr>
      </table>
<br>";
}

OFF

jira2712

หัวน้ำหอม ขายส่งหัวน้ำหอม ขายหัวน้ำหอม หัวเชื้อน้ำหอม ขายส่งหัวเชื้อน้ำหอม [direct=https://zateers.com]zateers.com[/direct]
[direct=https://zateer.blogspot.com/]หัวน้ำหอม[/direct]
สารกำจัดเชื้อรา สารกำจัดโรคพืช สารป้องกันโรคพืช [direct= https://zateers.com/greens/]zateers.com/greens/[/direct]
[direct=https://greenszateer.blogspot.com/]สารกำจัดเชื้อรา[/direct]

affoman

ขอสอบถามเพิ่มเติมหน่อยครับ

หากผมมี code ตัวแปร ที่ต้องให้อยู่ใน  echo

แค่ code ที่ผมต้องการจะใส่ลงไป  เผอิญ ว่า ต้องมีเงื่อนไข if esle ในนั่นด้วย
คือเริ่มจะงง 5555 มันเริ่มจะซ้อนๆ

}else{

$sql = "SELECT * FROM movie WHERE id = '".$_GET["id"]."'";
$Query = mysql_query($sql);
while($Result = mysql_fetch_array($Query))
echo "
<br>
      <table width='100%' border='0' cellspacing='2' cellpadding='2'>
        <tr>
          <div align='left'><img class='show_images' src='$webroot/movieposters/$Result[poster]' /><img src='$webroot/images/viponly.png' /></div>
          <td width='100%' valign='top'>
  <p><strong>ชื่อภาษาอังกฤษ : </strong>'$Result[name_en]'<br /><strong>ชื่อภาษาไทย : </strong>'$Result[name_th]'</p>
  <strong>เรื่องย่อ : </strong>'$Result[content]'</td>
        </tr>
      </table>
  <br>
<p align='left'><a href='$Result[ss1]' target='_blank'><img src='$Result[ss1]' height='500' width='700'></a></p>
<p align='left'><a href='$Result[ss2]' target='_blank'><img src='$Result[ss2]' height='500' width='700'></a></p>

<br>";
}


----------------------------------------------------------
<p align='left'><a href='$Result[ss1]' target='_blank'><img src='$Result[ss1]' height='500' width='700'></a></p>
<p align='left'><a href='$Result[ss2]' target='_blank'><img src='$Result[ss2]' height='500' width='700'></a></p>

ในส่วน code นี้นะครับ ที่ผมต้องการ จะใ้ช้ เงื่อนไข if else ลงไปด้วย 

สมมุติที่ผมคิด ผมคิดว่า จะใช้ if($Result[ss1] != '' )    เพื่อให้มันตรวจสอบ หาก ไม่มีการใส่ url ลง ใน box นี้ จะไม่แสดง  tag code ที่กำหนดไว้ขึ้นมานะครับ
ไม่รุ้ว่าจะเข้าผมอธิบายหรือป่าว 555 ผมก็อธิบายตามประสาๆ งงๆๆ เหมือนกัน ^^  รบกวนด้วยนะครับ
OFF

kungbest

มันก็ไม่มีความจำเป็นอะไรที่จะต้องจบ code ด้วย echo เดียวนะคับ  :P

เป็นผมจะทำแบบนี้

if($Result[ss1] != '')
echo "<p align='left'><a href='$Result[ss1]' target='_blank'><img src='$Result[ss1]' height='500' width='700'></a></p>";

if($Result[ss2] != '')
echo "<p align='left'><a href='$Result[ss2]' target='_blank'><img src='$Result[ss2]' height='500' width='700'></a></p>";


แล้ว echo ด้านบนก็จะจบตั้งแต่ <br>

:wanwan020:

ghostbehead

อ้างถึงจาก: melodee ใน 11 พฤษภาคม 2012, 22:38:13
server ไม่รองรับการใช้งาน short tag รึป่าวครับ
ลองใช้ โค๊ดแบบเต็มๆ ดุ <?=$Result[name_en];?> เป็น <?php echo $Result[name_en];?>

เห็นด้วยครับ

ผมว่าใช้เต็มๆ ดีกว่านะครับ
[direct=http://tinytastebake.com/]ขาย Brownie Brownie Cracker[/direct][direct=http://shoesdeedee.com/]ขายคอนเวิร์สมือสอง รองเท้ามือสอง[/direct]<br />[direct=http://isareeya.com/]บทความ ข่าวสาร เทคโนโลยี[/direct]<br />[direct=http://sangsanweb.com/]รับทำเว็บไซต์ PHP Wordpress[/direct]

affoman

อ้างถึงจาก: kungbest ใน 12 พฤษภาคม 2012, 01:39:36
มันก็ไม่มีความจำเป็นอะไรที่จะต้องจบ code ด้วย echo เดียวนะคับ  :P

เป็นผมจะทำแบบนี้

if($Result[ss1] != '')
echo "<p align='left'><a href='$Result[ss1]' target='_blank'><img src='$Result[ss1]' height='500' width='700'></a></p>";

if($Result[ss2] != '')
echo "<p align='left'><a href='$Result[ss2]' target='_blank'><img src='$Result[ss2]' height='500' width='700'></a></p>";


แล้ว echo ด้านบนก็จะจบตั้งแต่ <br>

:wanwan020:


ขอบคุณมากนะครับ
OFF

makoto

#11
อ้างถึงจาก: affoman ใน 12 พฤษภาคม 2012, 03:19:55
อ้างถึงจาก: kungbest ใน 12 พฤษภาคม 2012, 01:39:36
มันก็ไม่มีความจำเป็นอะไรที่จะต้องจบ code ด้วย echo เดียวนะคับ  :P

เป็นผมจะทำแบบนี้

if($Result[ss1] != '')
echo "<p align='left'><a href='$Result[ss1]' target='_blank'><img src='$Result[ss1]' height='500' width='700'></a></p>";

if($Result[ss2] != '')
echo "<p align='left'><a href='$Result[ss2]' target='_blank'><img src='$Result[ss2]' height='500' width='700'></a></p>";


แล้ว echo ด้านบนก็จะจบตั้งแต่ <br>

:wanwan020:


ขอบคุณมากนะครับ


คนรุ่นใหม่ๆ ทำลาย code กันเห็นๆ เขียนผิดหลักการ ทำให้ระบบรวน ทำงานไม่เต็มประสิทธิภาพ วิธีแก้ปัญหาของ code นี้ง่ายมาก


}else{
echo "
<br><br><br><br><center><img src='$webroot/images/viponly.png' /></center><br><br><br><br><br><br>";
}



แก้เป็น


}else{
echo "<br /><br /><br /><br /><center><img src=\"".$webroot."/images/viponly.png\" alt=\"\" /></center><br /><br /><br /><br /><br /><br />";
}


ถ้าคุณจะใช้ echo และเครื่องหมาย " หากมีตัวแปรใน echo ให้คุณปิด " ก่อนแล้วตามด้วยจุด ถึงจะอ้างตัวแปรได้ ข้อความใดๆ ที่อยู่ภายใน " และมี " ซ้อน ให้ใช้ \ นำหน้า
เช่น echo "<img src=\"".$url."\" alt=\"\" />";
ถ้าคุณจะใช้ echo และเครื่องหมาย ' ก็ต้องทำเหมือนกัน แต่ในเนื้อหาคุณสามารถใช้ " โดยไม่ต้องพิมพ์เครื่องหมาย / นำหน้าก่อน

แท็กที่ไม่มีแท็กปิด เช่น br, meta, hr ให้ใส่ / ก่อน > เสมอ

เขียนแบบนี้ให้เป็นนิสัย code จะสวยและทำงานลื่นทุกระบบ
[direct=https://www.kasetorganics.org]เกษตรปลอดสารพิษ[/direct] [direct=https://kaset.vwander.com]ผักสวนครัวรั้วกินได้[/direct] [direct=https://www.kasetorganic.com/knowledge/avocado/]ปลูกอะโวคาโด[/direct]

Synchronize

#12
ถ้าจะทำแบบนั้น ผมว่า ใช้  ' (single quote)  แทน  " (double quote) แทนดีกว่านะครับ

นอกจาก จะทำให้โค้ดมันเร็วขึ้นแล้ว ยังสวย และดูง่ายกว่า เมื่อใช้ร่วมกับ html เพราะ html จะใช้ " เป็นหลัก

เช่น

echo "<img src=\"".$url."\" alt=\"\" />";

แก้เป็น

echo '<img src="' . $url . '" alt="" />';

:wanwan017:
เนื้อหาความรู้น่าสนใจ ใหม่ๆ
[direct=https://develop.un-no.com/w3/docs/clear-float-in-div]เทคนิคการแก้ไขปัญหาจากการ float ซ้อน float แล้ว clear[/direct]

[direct=https://service.un-no.com/unbbz]ทำเว็บได้ด้วยตัวเองฟรี ด้วยระบบเว็บสำเร็จรูป unbbz , เว็บธรรมดา , เว็บบอร์ด , เว็บขายของ ทำได้หมดเลย[/direct]

sgio

อ้างถึงจาก: ghostbehead ใน 12 พฤษภาคม 2012, 01:53:40
อ้างถึงจาก: melodee ใน 11 พฤษภาคม 2012, 22:38:13
server ไม่รองรับการใช้งาน short tag รึป่าวครับ
ลองใช้ โค๊ดแบบเต็มๆ ดุ <?=$Result[name_en];?> เป็น <?php echo $Result[name_en];?>

เห็นด้วยครับ

ผมว่าใช้เต็มๆ ดีกว่านะครับ

เห็นด้วยครับ เพิ่มอีกนิด <?php echo $Result['name_en'];?> จะแจ่มกว่า

affoman

ขอบคุณมากๆครับ  ได้เปนความรู้เยอะจริงๆๆๆ ^^

ฝึก php แบบจิงจัง มา 2-3 วันละ เริ่มเข้าใจมาเยอะเลยครับ ^^
OFF