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 : 113099



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



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




คือผมเอาเวปบอร์ดมาประยุกทำเวปบลอคครับ แต่ติดปัญหาการส่งไอดีซ้ำ เพือที่จะส่งไปหน้า viewblog.php อ่ะครับ
โดยมันซ้ำ ID ไม่ทราบว่าผมเขียนคำสั่งผิดหรือป่าวครับ หลักการคือ

ผมเรียกมาจากสองเทเบิ้ลครับจอยกัน โดยที่อ้างอิง catid=id ของสองตารางเช่น เทเบิ้ลหลัก ID15 เทเบิ้อลรอง CaID=15
ตอนนี้ผมลีสออกมาก็โอเคครับตรงตามต้องการ แต่มาติดปัญหาคือว่า
ถ้าผมกดปุ่ม Read More จากโค๊ด ผมควรเขียนยังไงให้มัน View ไปหน้าที่ผมต้องการครับคือ จริงๆ เทเบิ้ลสองผม
มันจะเป็น id auto แต่อ้างอิงเทเบิ้ลหลักคือ id=15 งงคำถามไหมครับ โค๊ดผมบบนี้ครับ

indexblog.php

นี่คือหน้าแสดงบลอ๊ค
<?php
/*$lang =& JFactory::getLanguage();
if ($lang->getName() == 'English (United Kingdom)') { $swtlang = 'en' ; } else if ($lang->getName() == 'Thai (ภาษาไทย)') { $swtlang = 'th' ; };
*/
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("ttd_km");
		mysql_query("SET NAMES UTF8");

	/*mysql_query("SET character_set_results=utf8");
	mysql_query("SET character_set_client=utf8");
	mysql_query("SET character_set_connection=utf8");*/
	
$strSQL = "SELECT 
			tb_k2_categories.id, tb_k2_items.catid, tb_k2_items.title, tb_k2_items.introtext,tb_k2_items.created
				FROM tb_k2_items left join tb_k2_categories ON tb_k2_items.catid = tb_k2_categories.id
			WHERE tb_k2_items.catid = 15";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);

?>

<div id="container">
  <div id="top">
    <h1>Company LOGO</h1>
  </div>
  <div id="navcontainer">
    <ul id="navlist">
      <li id="active"><a href="#" id="current">HOME</a></li>
      <li><a href="#">MENU</a></li>
	  
    </ul>
  </div>
  <div id="leftnav">
    <h2>Search Blog</h2>
    <form method="post" action="#">
        <p>
          <input type="text" name="search" value="<?php echo $kw2; ?>" class="search" />
          <input type="submit" value="Search" class="searchSubmit" />
        </p>
      </form>
    
    </ul>
    <h2>Archives</h2>
    <ul id="leftnavmenu">
      <li><a href="#">January</a></li>
      <li><a href="#">February</a></li>
      <li><a href="#">March</a></li>
    </ul>
    
  </div>
  <div id="content">
    <h2>Welcome to&nbsp;<span style="color: #b29b35">TTD_KM&nbsp;</span>Blog</h2><br />
	
 <?php   $Per_Page = 5;   // Per Page

$Page = $_GET["Page"];
if(!$_GET["Page"])
{
	$Page=1;
}

$Prev_Page = $Page-1;
$Next_Page = $Page+1;

$Page_Start = (($Per_Page*$Page)-$Per_Page);
if($Num_Rows<=$Per_Page)
{
	$Num_Pages =1;
}
else if(($Num_Rows % $Per_Page)==0)
{
	$Num_Pages =($Num_Rows/$Per_Page) ;
}
else
{
	$Num_Pages =($Num_Rows/$Per_Page)+1;
	$Num_Pages = (int)$Num_Pages;
}

$strSQL .=" order  by tb_k2_items.id DESC LIMIT $Page_Start , $Per_Page";
$objQuery  = mysql_query($strSQL);

while($objResult = mysql_fetch_array($objQuery))
{
?>

    <p><img class="imgleft" src="images/1.png" alt="" /><h2><?=$objResult["title"];?></h2> <br />
      <?=$objResult["introtext"];?>
    </p>
    <p class="post"> <a href="viewblogs.php?ID=<?=$objResult["title"];?>" class="readmore">Read more</a><span class="date"><?=$objResult["created"];?></span></p><br />
<?
}
?>
&nbsp;&nbsp;&nbsp;Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page :
<?
if($Prev_Page)
{
	echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a> ";
}

for($i=1; $i<=$Num_Pages; $i++){
	if($i != $Page)
	{
		echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
	}
	else
	{
		echo "<b> $i </b>";
	}
}
if($Page!=$Num_Pages)
{
	echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>Next>></a> ";
}
mysql_close($objConnect);
?>
  </div>
  
  
</div>



หน้า viewblogs.php
viewblogs
<?php
/*$lang =& JFactory::getLanguage();
if ($lang->getName() == 'English (United Kingdom)') { $swtlang = 'en' ; } else if ($lang->getName() == 'Thai (ภาษาไทย)') { $swtlang = 'th' ; };
*/
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("ttd_km");
		mysql_query("SET NAMES UTF8");

	/*mysql_query("SET character_set_results=utf8");
	mysql_query("SET character_set_client=utf8");
	mysql_query("SET character_set_connection=utf8");*/
	
$strSQL = "SELECT *
				FROM tb_k2_items left join tb_k2_categories ON tb_k2_items.catid = tb_k2_categories.id
			WHERE อะไรดีครับ
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$objResult = mysql_fetch_array($objQuery);

?>


ตรงนี้ครับผมควรส่งค่าไหนไปครับ ให้มันเข้า Detail หน้านั้น ผมเขียนแบบนี้ครับ
<a href="viewblogs.php?ID=<?=$objResult["title"];?>" ถ้าเปลี่ยนเป็น Title เป็น ID มันจะได้ 15 ซ้ำอ่ะครับ

หน้าโชว์ผมควรเขียนแบบไหนครับ ตรง Where อ่ะครับ ให้มันรับจากลิ้งหน้าแรกอ่ะครับ

ตรงนี้ผมโชว์ทั้งหมดครับ คือ หัวข้อ กับ Detail อะครับ
<div id="content">
<h2><span style="color: #b29b35">&nbsp;&nbsp;<?=$objResult["title"];?></span></h2>
<p><img class="imgleft" src="images/1.png" alt="" />&nbsp;<?=$objResult["introtext"];?></p>
<p><span class="date"><?=$objResult["created"];?></span></p>
</div>


สรุปที่ผมติดคือ ผมส่งค่าลิ้งไปไม่ได้อ่ะครับ กับ หน้า Viewblogs มันไอดีซ้ำและไม่ขึ้นอะไรเลยครับ



Tag : PHP









ประวัติการแก้ไข
2014-12-08 14:28:34
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-12-08 11:37:48 By : sarut14 View : 850 Reply : 9
 

 

No. 1



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



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


จากโค๊ดแรก รูปที่แสดงออกมาผมได้ครับ ตามที่ต้องการคือแบบนี้ครับ ให้มันจอยเทเบิ้ลกันแล้วเรียกเฉพาะ ID กับ CatID ที่ต้องการ

ิblog1

อันนี้ค่าที่แสดงบล๊อคครับหรือ viewblogs.php

คือผมใช้วิธีส่ง Adress Bar มาจาก Title อ่ะครับ ไม่รู้ถูกไหม ป้องกัน ID ซ้ำ
blog2


แต่หน้าขาวครับ ตอนนี้ติดตรงการส่งมาหน้านี้อ่ะครับ รบกวนหน่อยครับ ขอบคุณมากๆครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 11:45:50 By : sarut14
 


 

No. 2



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



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


table แรก เป็น topic หัวข้อ

table สอง เป็น detail รายละเอียด อ้างอิง id จาก table แรก

กำหนด อ้างอิง tb1.ID = tb2.CatID แบบนี้ ให้ order by tb2.id เพื่อกำหนด id ที่ดูแล้วได้

เมื่อกด more... ส่ง ค่า ?tb1=tb1.id&tb2=tb2.id หมายเหตุ tb2.id คือค่าสุดท่ายที่แสดงผล หน้านี้
========================
ตัวรับ คิวรี่ where tb1.id = tb1 and tb2.id>tb2 order by tb2.id

พอเข้าใจไหมครับ ถ้าไม่เข้าใจก็คิดเอาเอง ผิดๆๆ โพสมาถามใหม่ 55555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 12:04:28 By : Chaidhanan
 

 

No. 3



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



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


ผมงงตรงนี้ครับ กำหนด อ้างอิง tb1.ID = tb2.CatID แบบนี้ ให้ order by tb2.id เพื่อกำหนด id ที่ดูแล้วได้

คือ TB แรก ผมอยากกำหนดว่าต้องมาจาก ID15 เลยอ่ะครับ แล้วเทเบิลสองนี่เอ Catid มาจอยกันมันคือ CatiD=15อ่ะครับ
เพราะจริงๆ เทเบิ้ลแรกมันเป็นหัวข้อ หมวดหมู่หลักชื่อ Blog แต่ในเทเบิ้ลสอง มันเป็นหัวข้อของบลอคและเนื้อหาเลยครับ
ตอนโชว์รูปแรก โชว์ถูกต้องครับ แต่พอกด More ผมงงเลยงงๆ เหอๆ ว่าทำไงให้มันไปตาม ไอดีเทเบิ้ลสอง ภายใต้ CatID=15

เบสผมแบบนี้ครับ

Blog3
Table แรก

Blog4
Table สองครับ

ยังงงๆอยู่ครับ คือวิวออกมาโอเคครับ แต่ตอนกด More อยากให้หน้า Viewblogs.php มันไปตาม เทเบิ้ลสองคือ Id 48-49... ทำนองนี้ครับ
แต่ยังอยู่ภายใน Catid 15
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 12:17:25 By : sarut14
 


 

No. 5



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



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


ไอดี 15 ถูกฟิกหรือไงครับ ไม่ว่าจะไปจะมา ก็ต้อง id 15 หรือไงครับ ผมไม่เชื่อว่าจะเป็นอยา่งนั้น มันต้องถูกเลือกจากไหมมาก่อนนะครีบ

แล้วะเอาตัวแปรตัสนั้น ส่งต่อไปยังหน้าอื่นๆ ด้วยเพื่อกำหนด หัวข้อหลักเป็น ID 15

ส่วนหัวข้อรอง ก็ไป จัดเรียง ตาม การนำเข้า และแสดง รายการแรกก่อน ตามจำนวน ที่ต้องการ

คำสั่งคิวรี่ ก็ใส่ select * from tb2 where catid=tb1 and id>tb2 order by id limit 10

limit 10 คือจำนวนที่ต้องการให้แสดง เปลี่ยนได้ตามความเหมาะสม

พอถึง ปุม more ก็ให้ใส่ <a href = "?tb1=15&tb2=tb2.id">more...</a>


อ่านทำความเข้าใจ และประยุกต์ใช้เอาครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 12:42:45 By : Chaidhanan
 


 

No. 6



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



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


ตอนนี้หน้า Viewblogs.php มีข้อมูลตามลิ้งมาแล้วครับ แต่ติดตรงที่ว่า กดลิ้งแล้วไอดีเดิมครับ แก้ไขได้อย่างไรครับ
พอดีที่ผมอ้างอิง ID=15 ไว้ก่อนครับ เพราะว่าต้องเจาะจงว่า เมนูนี้คือบลอค แล้วภายใต้ไอดีนี้ จะมีหัวข้อเกี่ยวกับบลอคอ่ะครับ
อนาคตถ้าสร้างเมนูใหม่ ค่อยมาแก้ไอดีอ้างอิงอีกที


ตอนนี้มาติดแค่ เทเบิ้ลสองครับ อยากได้แค่กดลิ้งแล้วไปตามไอดีหัวข้อเลยครับ แต่กดแล้วตอนนี้มันได้ไอดีซ้ำๆ


ประวัติการแก้ไข
2014-12-08 13:41:23
2014-12-08 13:48:44
2014-12-08 14:15:54
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 13:36:04 By : sarut14
 


 

No. 7



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



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


อ่านดูแล้ว ต้องแบ่งเป็น 3เฟส
1 blog
2 topic catid=blog.id
3 detail topic_id=topic.id

ถ้า ตารางสอง รวม topic และ detail อยู่ด้วยกัน ต้อง สร้างฟีลด์ มาอ้่าง topic_id อะไร เพื่อใช้ในการอ้างอิง
parent_id=topic.id
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 14:11:41 By : Chaidhanan
 


 

No. 8



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-12-08 14:11:41
รายละเอียดของการตอบ ::
ตอนนี้แบ่งเฟสแล้วครับ

สรุปแบบนี้ครับ ส่วนที่ทำได้แล้ว หน้า Index.php
มันโชว์ออกมาเหมือนรูปแรกครับ เขียนโค๊ดแบบข้างต้น


แต่ส่วนที่สองที่ติดคือ ลิ้ง Readmore ครับ ว่าจะทำไงให้กดแล้วไปตามไอดีของมันแต่มีเงื่อนไขว่า ต้องอ้งอิง CatID=15
ซึ้งผมคิดว่าถ้าเปลี่ยนเป็น อ้างอิงตามหัวข้อ ฟิวใช้ชื่อ Title มันไม่ออกครับไม่ตามนั้น ผมควรแก้ไขอย่างไรครับ

สรุปตอนนี้คือกด Readmore แล้ว มันก็ได้หน้าซ้ำเดิมๆครับ T_T


ผมส่งลิ้งไปแบบนี้ครับ มันส่งไอดีไปไม่ซ้ำแล้วครับ
<a href="viewblogs.php?ID=<?=$objResult["id"];?> ใช้โค๊ดเต็มจากกระทู้บนๆ

แต่ตอนรับค่ามา มันไม่แสดงตามไอดีที่ได้มาครับ มันจะซ้ำกันอยู่ แม้ไอดีเปลี่ยน

Code (PHP)
$strSQL =  "SELECT 
			tb_k2_categories.id,tb_k2_items.id, tb_k2_items.catid, tb_k2_items.title, tb_k2_items.introtext,tb_k2_items.created
				FROM tb_k2_items left join tb_k2_categories ON tb_k2_items.catid = tb_k2_categories.id
			WHERE tb_k2_items.catid = 15";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$objResult = mysql_fetch_array($objQuery);
$strSQL .=" order  by tb_k2_items.id DESC ";



ประวัติการแก้ไข
2014-12-08 14:35:38
2014-12-08 14:53:08
2014-12-08 15:11:40
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 14:27:54 By : sarut14
 


 

No. 9



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



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


WHERE tb_k2_items.catid = 15 and tb_k2_items.id > $last_tbk2_id ";

$last_tbk2_id ถ้าเป็น การเปิดครั้งแรก ให้กำหนดเป็น 0 ถ้าเคยเปิด มาก่อนแล้ว ก็เอาค่าสุดท้ายมาใส่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 15:33:16 By : Chaidhanan
 


 

No. 10



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



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


ได้แระครับไปลองทำแบบนี้ครับ ขอบคุณครับ หน้า View.php

Code (PHP)
<?php
#$itemId = JRequest::getInt('ID', 0);
$itemId = $_REQUEST['ID'];
if(!empty($itemId)) :
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("ttd_km");
		mysql_query("SET NAMES UTF8");

	/*mysql_query("SET character_set_results=utf8");
	mysql_query("SET character_set_client=utf8");
	mysql_query("SET character_set_connection=utf8");*/
$strSQL =  "SELECT title, introtext,created FROM tb_k2_items  WHERE id = ".$itemId;
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$objResult2 = mysql_fetch_row($objQuery);
?>



ประวัติการแก้ไข
2014-12-08 17:48:22
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-08 17:12:59 By : sarut14
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
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 02
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 อัตราราคา คลิกที่นี่