السلام عليكم ورحمة الله
هل من الممكن الاستعلام من قاعدة البينات عن حقل معين
ولكن بأحرف معدوده مثلا 200حرف وفي الاخير يتم وضع عبارة "إقرا المزيد"
ارجو المساعدة ليس بالتفصل فقط تلميح
وشكرا لكم
عرض للطباعة
السلام عليكم ورحمة الله
هل من الممكن الاستعلام من قاعدة البينات عن حقل معين
ولكن بأحرف معدوده مثلا 200حرف وفي الاخير يتم وضع عبارة "إقرا المزيد"
ارجو المساعدة ليس بالتفصل فقط تلميح
وشكرا لكم
يمكنك إستخدام الدالة التالية ..
مثال :كود PHP:
function cut($text, $long)
{
$a = substr($text, 0, $long);
$b = strrpos($a, " ");
$c = strlen($text);
if ($long > $c or $long == $c)
{
return $text;
}
elseif ($long < $c)
{
$text = substr($text, 0, $b);
$dots = ".. <a href=\"?read=1\">read more</a>";
return $text.$dots;
}
}
كود PHP:
// example
$text = "Hello world!, how are you today? bad i think :).";
if ($read == 1)
{
print $text;
}
else
{
print cut($text,20);
}
للتلميح فقط :)
http://www.swalif.net/softs/swalif45/softs110372/
الله يعطيك العافية والله ما قصرت جواب في الصميم
تسلم جزاك الله خير
تطوير بسيط للدالة :
كود PHP:
function cut($text, $limit)
{
$a = strlen($text);
if ($limit > $a or $limit == $a)
{
return $text;
}
else
{
return substr($text, 0, strrpos(substr($text, 0, $limit), ' '));
}
}
كود PHP:
function cut($text, $limit)
{
$a = strlen($text);
if ($limit > $a or $limit == $a)
{
return $text;
}
else
{
return substr($text, 0, strrpos(substr($text, 0, $limit), ' ')).' ... [ <a href="?more=1">قراءة المزيد</a> ]';
}
}
$text = 'بسم الله الرحمن الرحيم';
if (isset($_GET['more']) and $_GET['more'] == 1)
{
echo $text;
}
else
{
echo cut($text, 20);
}
ملاحظة على هذه الدالة ، وهي أنني عندما أقوم بقطع نص يحتوي على وسوم html ، فإنه سيقطع الوسم الذي يقع في مركز القطع او بعد مركز القطع ..
مثلاً
فإن النص بعد القطع سيكون شيئاً مثلكود PHP:
cut('<p>hello hello hello hello</p>', 10);
حسناً ،، كيف نحل هذه المشكلة ؟كود PHP:
<p>hello h
هل لدى أحدكم حل أفضل ؟كود PHP:
nl2br(strip_tags(cut('<p>hello hello hello hello</p>', 10)));