كنترل پنل             جستجو               پرسشهای متداول            .:: آخرین پست‌های انجمن ::.            لیست اعضا            مدیران سایت             درجات        ورود
فهرست انجمن‌ها -> طراحي سايت‌هاي اينترنتي -> اصول طراحي صفحات وب
پاسخ دادن به این موضوع
خواندن لينك از پايگاه
پست تاریخ: پنج‌شنبه 7 اسفند 1393 - 18:01    
malihe70
خوب داره پيش مي‌ره
خوب داره پيش مي‌ره


پست: 80
عضو شده در: 3 مرداد 1393
محل سکونت: ساوه
iran.gif


امتياز: 1064

عنوان: خواندن لينك از پايگاه خواندن مشخصات فردی ارسال پیام شخصی

سلام دوستان
من ميخوام لينكهام رو از پايگاه بخونم يني وقتي يه موضوعي رو وارد جدولم ميكنم يه فيلد دارم به اسم link كه لينكش رو اونجا وارد ميكنم ولي لينكم خراب ميشه كدهاشم اينه:
کد:

<div class="namebook" ><a class="a" href="<?php echo $link ?>"> <?php echo $namebook?></a></div>


اين هم مقدار فيلدlink
کد:
index.php?subjozve=<?php echo $id ;?>

لينكش هم ميره به اينجا
کد:
index.php?subjozve=<?php echo $id ;?>

من ميخوام مقدار idرا بده ولي دقيقا همون رو اكو ميكنه

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: جمعه 8 اسفند 1393 - 06:08    
bidak
داره كولاك مي‌كنه!
داره كولاك مي‌كنه!


پست: 121
عضو شده در: 29 تیر 1392

blank.gif


امتياز: 1376

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی ارسال email

سلام.یکم بیشتر توضیح بده. من نوع چیدمان لینکاتو متوجه نشدم.

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: جمعه 8 اسفند 1393 - 17:59    
malihe70
خوب داره پيش مي‌ره
خوب داره پيش مي‌ره


پست: 80
عضو شده در: 3 مرداد 1393
محل سکونت: ساوه
iran.gif


امتياز: 1064

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی

خوب ببينيد من تو سايتم يه قسمتي دارم براي دانلود جزوات
كه اين جزوه ها يه عكس دارند يه نام و يك كد كه اين هارو از پايگاه ميخونم ونمايش ميدم
كدش اينه:
کد:
<?php
         include "config.php";
         mysql_query ('SET NAMES UTF8');
         $q=mysql_query("select* from jozve ");
          $cnt=mysql_num_rows($q);
          for ($i=1;$i<=$cnt;++$i){
              $row=mysql_fetch_row($q);
             $id=$row[0];
             $namebook=$row[1];
             $link=$row[2];
             $kod=$row[3];
             $aks=$row[4];
             ?>
             <div class="bodynomarat">
<div class="image rotate"><a href="<?php echo $link ?>"><img id="ax" src="image/<?php echo $aks?>.jpg" alt="<?php echo $namebook?>" height="150" width="140"></a></div>
<div class="namebook"><a class="a" href="<?php echo $link ?>"> <?php echo $namebook?></a></div>
<div class="namebook"><a class="a" href="<?php echo $link ;?>">كد كتاب : <?php echo $kod?></a></div>   
     </div>
     <?php } ?>

مثلا جزوه دستور كار ازمايشگاه وقتي روش كليك ميشه بايد جزوه دانلود بشه
و جزوه كتابdcهنرستان وقتي روش كليك ميشه حالا بايد بره به يه صفحه ديگه چون خودش چند قسمت ميشه مثلا مقدمه وفصل اول و....
خوب حالا من چون تصميم دارم براي سايتم ادمين بزارم ميخام لينك هارو هم از پايگاه بخونم كه وقتي مدير سايت ميخاد يه جزوه اضافه كنه لينكش رو هم اضافه كنه
اين اصل مطلب
حالا من چي كار كردم:
من جزوه هارو ايدي و اسمشون كدشون عكسشون ولينكشون رو تو يه جدول وارد كردم به اسمjozve
و اون هاي كه داخلشون جزوه داره مثل كتابdcهنرستان بخش هاي داخليش رو ريختم تو يه جدول ديگه به اسمsubjozveكه تو اين جدول من اي دي و ايدي جزوه و اسم جزوه و حجم و..يه سري اطلاعات دارم
حالا همون طور كه گفتم ميخام وقتي رو جزوه دستور كار ازمايشگاه كليك كردم جزوه رو دانلو كنه كه براي اين كار تو فيلد link جدول jozveادرس فايل رو ميزارم وجواب ميده و وقتي روي كتابdcهنرستان كليك ميشه بره به يه صفحه كه اونجا مقدمه وفصل اول و... هست براي اينها فيلد لينكشون اينه(منظورم فيلد linkجدولjozve):
کد:
index.php?jozve=<?echo $id?>

خوب من كد هاي فايلjozve.php را ميزارم ويه قسمتي از index كه مربوط به سوالمه
jozve.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>جزوه</title>
<meta name="keywords" content="طراحی سایت,اموزش,کامپیوتر,برق,هنرستان,دبیرستان,جزوه آموزشی" />
<meta name="description" content="جزوه دروس هنستان ودبیستان طاحی سایت برق فیزیک ریاضی" />

<link rel="stylesheet" href="css/jozve.css" />
</head>

<body>

 <?php
         include "config.php";
         mysql_query ('SET NAMES UTF8');
         $q=mysql_query("select* from jozve GROUP BY namebook");
          $cnt=mysql_num_rows($q);
          for ($i=1;$i<=$cnt;++$i){
              $row=mysql_fetch_row($q);
             $id=$row[0];
             $namebook=$row[1];
             $link=$row[2];
             $kod=$row[3];
             $aks=$row[4];
             ?>
             <div class="bodynomarat">
<div class="image rotate"><a href="<?php echo $link ?>"><img id="ax" src="image/<?php echo $aks?>.jpg" alt="<?php echo $namebook?>" height="150" width="140"></a></div>
<div class="namebook"><a class="a" href="<?php echo $link ?>"> <?php echo $namebook?></a></div>
<div class="namebook"><a class="a" href="<?php echo $link ;?>">كد كتاب : <?php echo $kod?></a></div>   
     </div>
     <?php } ?>
</body>
</html>

اين هم index
کد:
else if(isset($_GET['jozve'])) {include 'contant/jozve.php';}
          else if(isset($_GET['subjozve'])) {include 'contant/subjozve.php';}

اميدوارم توضيحاتم خوب باشه اگر زياد شد شرمنده
مشكلم رو هم تو سوال قبلي گفتم
انگار وقتي فيلدlinkرو ميخونه قسمت Php ش كار نميكنه دقيقا دستور رو چاپ ميكنه من ميخام مقدار idرو بده چون وقتي ميره بهsubjozve نياز دارم مقدار id رو

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: شنبه 9 اسفند 1393 - 05:24    
bidak
داره كولاك مي‌كنه!
داره كولاك مي‌كنه!


پست: 121
عضو شده در: 29 تیر 1392

blank.gif


امتياز: 1376

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی ارسال email

شما میتونید دو تا جدول درست کنید و در جدول اول اطلاعاتی مثل نام و عکس و ... در مورد فایل قرار بدید و در جدول دوم لینک مربوط به جزوه ها.
اگر فایل ها رو سایت خودتون آپلود میشن , نیاز نیست آدرس کامل فایل هارو در دیتابیس نگه دارید.کافیه نام فایل ذخیره شدرو درج کنید.چون در اینصورت میدیونید که فرضا فایل های شما در پوشه ی uploads یا files آپلود شدن.
یک عنوان هم در جدول لینک درج میکنید که مثلا مشخص بشه فصب 1 یا هر موضوع دیگه.اما یک فیلد مهم دیگه ای که جدول links باید داشته باشه , فیلدی مثلا بنام jozve_id که یک کلید خارجی هست و مقدار id جدول اولتون یعنی jozve در این فیلد قرار میگیره تا مشخص بشه این لینک ها مربوط به کدوم جزوه هست.
در ادامه توو صفحه میتونید تمام فیلدهای جدول jozve رو نمایش بدید.
زمانی که کاربر کلیک کرد روی یک لینک از جزوه ها , در صفحه ی دیگه ای که باز میشه , لینک های مربوط به اون جزوه ای که باز کرده لود بشه.
حالا این میتونه یکی باشه یا چنتا.
اما اگه واستون مهمه که اگر فقط یک فایل بود , دیگه به صفحه ی دیگه نره و همونجا دانلود بشه و فقط اون جزوه هایی که چنتا لینک دارن برن صفحه ی دیگه و لینک هاشون لود بشه , میتونی به این شکل عمل کنی:
کد:

mysql_connect('localhost', 'root', '');
mysql_select_db('test');

$result = mysql_query("SELECT project.id AS pID, project.name, links.*
      , (SELECT Count(links.id) FROM links WHERE links.project_id = project.id) AS countTotal
FROM project LEFT OUTER JOIN links on project.id=links.project_id GROUP BY (project.name)");
echo mysql_error();
if(mysql_num_rows($result) > 0)
{
    while ($row = mysql_fetch_assoc($result))
    {
        if($row['countTotal'] == 1)
        {
            echo '<a href="www.mysite.com/files/'. $row['link_name'] .'.zip">' . $row['name'] . '</a>';
        }
        else
        {
            echo '<a href="www.mysite.com/file.php?id='. $row['pID'] .'">' . $row['name'] . '</a>';
        }
        echo "<br>";
    }
}

تو این مثال من project نوشتم که همون jozve میتونی در نظر بگیری.
کد فقط یک مثال بود , ولی میتونی ازش ایده بگیری و تغییراتی بدی.
یه توضیج دیگه:
وقتی کاربر روی لینکی مثلا dc کلیک کرد , شما لینکی درست کردی که به صفحه ای میره با آیدی مشخص شده واسه dc.
در اون صفحه واسه نمایش لینک های dc و یا هرعنوان دیگه مثل آزمایشگاه بازهم میتونی از همین نمونه کد بالا استفاده کنی و جوین بزنی اما قسمت select count و قسمت group by پاک میشه و یک where هم اضافه میشه که این شرط مشخص میکنه کدوم جزوه باید لینکهاش فراخوانی بشن:
کد:

$id = intval($_GET['id']);
$result = mysql_query("SELECT project.id AS pID, project.name, links.*
FROM project LEFT OUTER JOIN links on project.id=links.project_id WHERE (project.id = '{$id}')
");

و دز ادامش یک while مینویسی و لینکهای مربوط به اون جزوه ی مورد نظرو چاپ میکنی.
این از کلیتش.

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: شنبه 9 اسفند 1393 - 10:50    
malihe70
خوب داره پيش مي‌ره
خوب داره پيش مي‌ره


پست: 80
عضو شده در: 3 مرداد 1393
محل سکونت: ساوه
iran.gif


امتياز: 1064

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی

ممنون از توضيحاتتون
ميشه يكم سلكتهارو توضيح بديد خيلي پيچيدست Neutral

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: شنبه 9 اسفند 1393 - 13:48    
bidak
داره كولاك مي‌كنه!
داره كولاك مي‌كنه!


پست: 121
عضو شده در: 29 تیر 1392

blank.gif


امتياز: 1376

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی ارسال email

چون اطلاعات دو تا جدولو (jozve و links) رو با هم نیاز داری از جوین استفاده میکنی.
اما اگر خواستی در یک صفحه فقط عناوین جزوه ها رو نمایش بدی و بعد از کلیک روی یک جزوه در صفحه ی بعد لینک نمایش داده بشه , نیاز به جوین نیست و فقط یک سلکت به جدول jozve میزنی.
وقتی جوین میزنیم بدیلیل تشابه اسمی فیلد های دو جدول مثل id , واسه مشخص کردن فیلد اول نام جدولو صدا میزنیم بعد نام فیلد.
قسمت اول فیلدهایی که میخوایم سلکت بشن رو مشخص میکنیم:
کد:

SELECT project.id AS pID, project.name, links.*
      , (SELECT Count(links.id) FROM links WHERE links.project_id = project.id) AS countTotal

وقتی as میزاریم یک عنوان یا نام مستعار برای اون فیلد انتخاب کردیم.
مثلا project.id as pID گذاشتم.علتش اینه که در جدول project یا همون جزوه و جدول links فیلد های آیدی تشابه اسمی دارن , به همین دلیل نام مستعار واسه آیدی جدول project گذاشتم که توسط pID بهش دسترسی داشته باشم.
یه سای کوئری هم نوشتم.این ساب کوئری تعداد لینک های جزوه رو توو فیلد countTotal که با as مشخص کردیم نگه میداره که بعدا چک میکنیم اگر تعداد لینک ها یکی بود , لینک دانلود نمایش داده بشه و نره صفحه ی بعد.
البته اگر روشت عوض شد و قرار شد همه ی لینک ها وقتی کلیک شد , بره صفحه ی بعد و اونجا لینک های دانلود بیاد , خوب دیگه نه به subquery و نه به جوین نیاز داری که قبلا هم گفتم.
در ادامه ی کوئری گفته شده روی کدام دو تا جدول جوین بشه:
کد:

FROM project LEFT OUTER JOIN links

و جوین با چه شرطی:
کد:

on project.id=links.project_id

یعنی هر جایی , آیدی project برابر باشه با فیلد project_id جدول links (که این فیلد کلید خارجی است).
یکبار کوئریرو داخل خود phpmyadmin و جدولت , اجرا کن و نتیجرو ببین.
اسامی فیلدهارو مثل اسامی جدولت کن.

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: شنبه 9 اسفند 1393 - 18:16    
malihe70
خوب داره پيش مي‌ره
خوب داره پيش مي‌ره


پست: 80
عضو شده در: 3 مرداد 1393
محل سکونت: ساوه
iran.gif


امتياز: 1064

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی

project.id يعني از جدول projectفيلد id?
links.* يني چي؟

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:

پست تاریخ: شنبه 9 اسفند 1393 - 19:04    
bidak
داره كولاك مي‌كنه!
داره كولاك مي‌كنه!


پست: 121
عضو شده در: 29 تیر 1392

blank.gif


امتياز: 1376

عنوان: پاسخ به «خواندن لينك از پايگاه» خواندن مشخصات فردی ارسال پیام شخصی ارسال email

آره.
links.* یعنی تمام فیلد های جدول links

[ وضعيت كاربر: ]

تشکر کردن از پست  پاسخگویی به این موضوع بهمراه نقل قول 
تشکرها از این پست:


نمایش پستها:                 مشاهده موضوع قبلی :: مشاهده موضوع بعدی  
پاسخ دادن به این موضوع
 

صفحه 1 از 1

تمام زمانها بر حسب GMT + 3.5 Hours می‌باشند
 Related Topics 


 information 

 

پرش به:  
شما نمی توانید در این بخش موضوع جدید پست کنید
شما نمی توانید در این بخش به موضوعها پاسخ دهید
شما نمی توانید موضوع های خودتان را در این بخش ویرایش کنید
شما نمی توانید موضوع های خودتان را در این بخش حذف کنید
شما نمی توانید در این بخش رای دهید


Copyright 2004-2024. All rights reserved.
© by Aftabgardan Cultural Center : Aftab.cc