تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
من نام سایت هایی که به سایتم لینک میشن رو در دیتابیس زخیره کردم حالا میخوام کاری کنم که به ترتیب اول نام سایت بدون http://www. , http:///, https://www. , https:// اول لیست بشن بر اساس بیشترین دفعات تکرار و حداکثر 10 سایت لیست بشه و بعد در جلو هر کدوم تعداد دفعات تکرار شدنشون رو بنویسه با هر ادرسی میخواد باشه فقط اینجوری barnamenevis.org مهمه قبل و بعد آدرسش هرچی میخواد باشه
نام جدول:statistic
web_site |
url_address |
id |
barnamenevis.org |
|
1 |
|
|
2 |
|
|
3 |
hassas-computer.com |
|
4 |
www.google.com |
|
5 |
www.barnamenevis.org |
|
6 |
map.google.com |
|
7 |
barnamenevis.org |
|
8 |
barnamenevis.org |
|
9 |
barnamenevis.org |
|
10 |
barnamenevis.org |
|
11 |
google.com |
|
12 |
m.facebook.com |
http://m.facebook.com/dfgdfgdfgdfg |
13 |
translate.google.com |
https://translate.google.com |
14 |
shop.hassas-computer.com |
http://shop.hassas-computer.com/index.php?id_category=3&controller=category |
15 |
خوب میخوام اینجوری نمایش داده بشه
نام سایت |
تعداد رکورد |
barnamenevis.org |
7 |
google.com |
5 |
hassas-computer.com |
2 |
facebook.com |
1 |
لطفا کد هایی گه میزارید رو کامل درج کنید و توضیحاتشم بدیدن یاد بگیرم
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
برای بهینه بودن بهتره خود سایت ها رو تویهی جدول دیگه به شکل مورد نظرتون سیو کنید و بعد صفحاتی که بهتون لینک دادند رو تویه جدول دیگه ای سیو کنید تا هم بهینه تر باشه و هم کار شما ارحت تر باشه
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
نقل قول:
نوشته شده توسط
prans.info
برای بهینه بودن بهتره خود سایت ها رو تویهی جدول دیگه به شکل مورد نظرتون سیو کنید و بعد صفحاتی که بهتون لینک دادند رو تویه جدول دیگه ای سیو کنید تا هم بهینه تر باشه و هم کار شما ارحت تر باشه
================================================== ================================================== =============
خوب من چطوری نام سایت رو بدست بیارم کد زیر رو دارم ولی درست عمل نمیکنه
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'https://s.gigabyte.co.tw/dftfd/ertoiert./weropi', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
{
echo $siteName[2].'.'.$siteName[3];
}
elseif(mb_strlen($siteName[4]) >= 1 && mb_strlen($siteName[4]) <= 3)
{
echo $siteName[2].'.'.$siteName[3].''.$siteName[4];
}
else
{
echo $siteName[3].$siteName[4];
}
حل شد
================================================== ================================================== ==============
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'http://hassas-computer.com/main.php?view=dashboard&active=1', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
echo $siteName[2].'.'.$siteName[3];
else echo $siteName[3].$siteName[4];
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'https://hassas-computer.com/main.php?view=dashboard&active=1', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
echo $siteName[2].'.'.$siteName[3];
else echo $siteName[3].$siteName[4];
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'http://www.hassas-computer.com/main.php?view=dashboard&active=1', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
echo $siteName[2].'.'.$siteName[3];
else echo $siteName[3].$siteName[4];
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'http://shop.hassas-computer.com/main.php?view=dashboard&active=1', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
echo $siteName[2].'.'.$siteName[3];
else echo $siteName[3].$siteName[4];
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'https://www.hassas-computer.com/main.php?view=dashboard&active=1', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
echo $siteName[2].'.'.$siteName[3];
else echo $siteName[3].$siteName[4];
خروجی :
Array
(
[0] => http://hassas-computer.com
[1] => http://
[2] => hassas-computer
[3] => com
[4] =>
)
hassas-computer.com
Array
(
[0] => https://hassas-computer.com
[1] => https://
[2] => hassas-computer
[3] => com
[4] =>
)
hassas-computer.com
Array
(
[0] => http://www.hassas-computer.com
[1] => http://www.
[2] => hassas-computer
[3] => com
[4] =>
)
hassas-computer.com
Array
(
[0] => http://shop.hassas-computer.com
[1] => http://
[2] => shop
[3] => hassas-computer
[4] => .com
)
hassas-computer.com
Array
(
[0] => https://www.hassas-computer.com
[1] => https://www.
[2] => hassas-computer
[3] => com
[4] =>
)
hassas-computer.com
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
نقل قول:
نوشته شده توسط
bagherok
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'http://hassas-computer.com', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
echo $siteName[2].'.'.$siteName[3];
else echo $siteName[3].$siteName[4];
Array
(
[0] => http://hassas-computer.com
[1] => http://
[2] => hassas-computer
[3] => com
[4] =>
)
hassas-computer.com
الان تو این کدی که شما قرار داده اید اگر آدرس سایت زیر رو وارد کنید به اشتباه پسوند اون چاپ میشه
hassas-computer.net.tf
رو به صورت
.net.tf
چاپ میکنه
preg_match('#(http://www.|https://www.|https://|http://|www.)([^.]*).([^.|/]*)?([^/]*)#i', 'https://s.gigabyte.co.tw/dftfd/ertoiert./weropi', $siteName);
echo '<pre>'. print_r($siteName,true).'</pre>';
if(empty($siteName[4]))
{
echo $siteName[2].'.'.$siteName[3];
}
elseif(mb_strlen($siteName[4]) >= 1 && mb_strlen($siteName[4]) <= 3)
{
echo $siteName[2].'.'.$siteName[3].''.$siteName[4];
}
else
{
echo $siteName[3].$siteName[4];
}
حل شد
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
من با کد زیر تعداد رکورد هایی رو که بیتشرین تکرار رو دارن لیست میکنم اما نمیدونم چطوری باید تعداد هر کدومم چاپ کنم
<?php
$result_20=mysql_query("SELECT `web_site`,count(`web_site`) as `count` FROM `statistic` where `date`='".$Y."/".$M."/10' group by `web_site` having count(*) >= 1 ORDER BY `count` DESC LIMIT 0 , 10")or die(mysql_error());
while ($max_company_record_1=mysql_fetch_array($result_2 0))
{
echo "".$max_company_record_1['web_site']."<br>";
}
?>
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت
کسی نیست کمک کنه چطوری باید جلوی هر رکورد تعداد دفعاتشونم درج کنه :گریه::گریه:
نقل قول: تشخصیص نام سایت با تابع preg_match() و شمارش و نمایش تعداد و نام سایت