راکت
حل شده

قرار دادن لینک در جدول توسط PHP

5 پاسخ

سلام،
وقت بخیر و خسته نباشید عرض می‌کنم خدمت تمامی عزیزانی که این سطر‌ها رو می‌خونند.
قبلا از شما بابت همکاری و وقتی که می‌گذارید تشکر می‌کنم.

من در دیتابیس‌م یک URL رو ذخیره می‌کنم، حالا می‌خوام اون لینک برام در جدول <table> HTML نمایش داده بشه که نمی‌تونم.

echo "<table class=\"table table-striped table-bordered\">";
echo "<th>ردیف</th>";
echo "<th>نام</th>";
echo "<th>شماره</th>";
echo "<th>تاریخ تولد</th>";
echo "<th>اعلان</th>";

while($row = mysqli_fetch_array($customers)){

  echo "<tr><td>" . htmlspecialchars($row['id']) . "</td><td>" . htmlspecialchars($row['fullname']) . "</td><td>" . htmlspecialchars($row['phone_number']) . "</td><td>" . htmlspecialchars($row['birth_month']) . "&nbsp;" . htmlspecialchars($row['birth_day']) . "</td><td>" . htmlspecialchars($row['url']) . "</td></tr>";
}

echo "</table>";
}

وقتی با استفاده از قطعه‌کد بالا و با کمک

htmlspecialchars($row['url'])

اقدام به دریافت لینک می‌کنم، این لینک در جدول برام Clickable نیست و فقط متنش نمایش داده می‌شه!

در واقع می‌خوام در هر سطر جدولم در HTML یک کلمه (مثلا اعلان) نمایش داده بشه که قابل کلیک باشه و لینکش همون url ذخیره شده در پایگاه داده‌ام باشه.

ممنون می‌شم اگر راهنمایی‌م بفرمایید.

ثبت پرسش جدید

پاسخ‌ها

5
erfan
erfan
@erfan.h.010011

تخصص: gray hat

بهترین پاسخ

سلام

همان طور که دوستمون گفت تابع htmlspecialchars برای اینکه مقادیر حتما به صورت string ذخیره بشه تا مورد سوءاستفاده هکر ها قرار نگیره
اما برای ساخت لینک باید از تگ a استفاد کرد
مثال :

        <a href="/">roocket</a>

حالا شما چون از " استفاده کردین باید برای ادرس دهی تگ a از ' استفاده کنید
ادرس دهی در href داده میشه

(#) شمارو به صفحه که در اون قرار دارید هدایت میکنه

"</td><td><a href='#'>" . htmlspecialchars($row['url']) . "</a></td></tr>"

حالا اگه url درست در ادرس دهی درست عمل میکنه متونید به این شکل بنویسد تا ادرسی دهی تگ a خودکار باشه

    $url = $row['url'];
    echo "</td><td><a href='<?= $url ?>'>" . htmlspecialchars($row['url']) . "</a></td></tr>";

هر طور خودتون صلاح میدونید اما به نظرم بهتره قبل از یاد گیری php زبان نشانه گذاری html مسلط بشید

بهرام
بهرام
@bahram

تخصص: Laravel Developer

سلام
باید توی تگ a بزاریدش

متین طیبی نیا
متین طیبی نیا
@MatinTayebi

تخصص: backend

@masihreyhani
سلام
تابع htmlspecialchars کارش اینکه دیتا هایی که توش از تگ html استفاده شده ، تگ های html رو حذف میکنه . این تابع داره از یک پترن ریجکس استفاده میکنه تا تگ html داخل رشته پیدا کنه ،و تو ی تگ بسته هر html از / استفاده شده پس اونو از داخل رشتت کات میکنه . زمانی که شما دارید دتیا ذخیره میکنید نیازه از این تابع استفاده کنید . زمان نمایش نیاز نیست استفاده کنید .

شاید پاسخ شما همین‌جا باشد

مسیح ریحانی
مسیح ریحانی
@masihreyhani

@erfan.h.010011 عزیز،
سلام و وقت بخیر.
بی‌نهایت سپاسگزارم بابت وقتی که گذاشتید و توضیحات کاملی که ارائه فرمودید.
پیروز و موفق باشید.

مسیح ریحانی
مسیح ریحانی
@masihreyhani

@MatinTayebi
سلام و وقت بخیر.
ممنون بابت توضیحات‌تون.
امیدوارم که همواره موفق باشید.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام