यहां http://php.net/manual/en/function। preg-match-all.php आप preg_match_all के चौथे पैरामीटर के बारे में पढ़ सकते हैं। आप पाए गए यूआरएल पर लूप कर सकते हैं। मैंने आपके रेगुलर एक्सप्रेशन का अंत बदल दिया है, इसलिए यह पूरी लाइन को नहीं पकड़ पाएगा:
$urlinput=mysql_real_escape_string($_POST['url']);
$pattren="/(http:\/\/)[a-zA-Z0-9]*\.[a-z]*(.*)|(www)\.[a-zA-Z0-9]*\.[com]*([a-zA-Z0-9\.\-_\/\?=\:]*)/";
preg_match_all( $pattren, $urlinput, $matches, PREG_SET_ORDER );
foreach($matches as $match) {
$id=rand(10000,99999);
$shorturl=base_convert($id,20,36);
$sql = "insert into url values('$id','" . mysql_real_escape_string($match[0]) . "','$shorturl')";
mysql_query($sql,$con);
}
SQL इंजेक्शन से भी सावधान रहें, और जब आप अपने प्रश्नों में उपयोगकर्ता डेटा का उपयोग करते हैं तो mysql_real_escape_string का उपयोग करें।