php - Regex not returning matches from database, but works fine when manually put in to input string -


i know asked question yesterday regex (regex not returning matches independent of expression used). code got yesterday works fine long put url:s input string manually, when load database 0 matches.

functioning code

$url = "http://www.ltblekinge.se/download/18.9c16a31109c04a3e880003750 http://one.com www.two.com http://yourad.io";  preg_match_all('/((([a-za-z]{3,9}:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[a-za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w]+@)[a-za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[.\!\/\\w]*))?)/', $url,  $matches);  print_r($matches[1]); 

gives following output:

array ( [0] => http://www.ltblekinge.se/download/18.9c16a31109c04a3e880003750 [1] => http://one.com [2] => www.two.com [3] => http://yourad.io )  

non functional code

<?php /*** mysql hostname ***/ $hostname = 'localhost';  /*** mysql username ***/ $username = 'root';  /*** mysql password ***/ $password = 'root';  try { $dbh = new pdo("mysql:host=$hostname;dbname=blankett", $username, $password); $dbh->exec('set character set utf8');  $dbh->setattribute(pdo::attr_errmode, pdo::errmode_exception);   $stmt = $dbh->prepare("select link_form forms2"); $stmt->execute(); $url = $stmt->fetchall(pdo::fetch_assoc);  preg_match_all('/((([a-za-z]{3,9}:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[a-za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w]+@)[a-za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[.\!\/\\w]*))?)/', $url, $matches);  if (preg_last_error() == preg_no_error) { print 'there no error.'; } else if (preg_last_error() == preg_internal_error) { print 'there internal error!'; } else if (preg_last_error() == preg_backtrack_limit_error) { print 'backtrack limit exhausted!'; } else if (preg_last_error() == preg_recursion_limit_error) { print 'recursion limit exhausted!'; } else if (preg_last_error() == preg_bad_utf8_error) { print 'bad utf8 error!'; } else if (preg_last_error() == preg_bad_utf8_error) { print 'bad utf8 offset error!'; }  print_r($matches);   } catch(pdoexception $e) { echo $e->getmessage(); } ?> 

gives me output:

there no error. 

this makes me think there wrong input string, can no figure out wrong it. input string looks like:

array ( [0] => array ( [link_form] => http://www.ltblekinge.se/download /18.9c16a31109c04a3e880003750/forskrivningsanvisn_rorelse_forflyttn ) [1] => array ( [link_form] => http://www.ltdalarna.se/upload/vard_och_halsa/halso_och_sjukvarden/ldhjalpmedel/hjalpmedelsguide/03hjmhantering/hantering%20av%20kostnader%20för%20hjälpmedel%20ver%202.pdf ) [2] => array ( [link_form] => http://www.gotland.se/imcms/62373 ) [3] => array ( [link_form] => http://www.hjalpnu.se/download/18.4fd9e13012a408581b980002702/bestallningsblankett.doc ) [4] => array ( [link_form] => http://www.regionhalland.se/pagefiles/14881/bil%20a%2013%20förskrivning%20av%20hjälpmedel.pdf ) [5] => array ( [link_form] => http://www.jll.se/download/18.5c5942f112d4af0bbaf80008216/frågor+och+svar+-+brukare.pdf ) [6] => array ( [link_form] => http://www.jll.se/download/18.5c5942f112d4af0bbaf80008218/rådgivning+hjälpmedel.pdf ) [7] => array ( [link_form] => http://www.jll.se/download/18.47d2594d12bccf68c3680001577/definition+och+direktiv+egenansvar+och+hjä ) [8] => array ( [link_form] => http://www.jll.se/download/18.2a18114134d5722c50800050/fakturaunderlag+för+brukare+120112.pdf ) [9] => array ( [link_form] => http://www.lj.se/info_files/infosida38484/lanevillkor_hjalpmedel.pdf ) [10] => array ( [link_form] => http://www.lj.se/info_files/infosida38484/avvikelserapport.doc ) [11] => array ( [link_form] => http://www.ltkronoberg.se/upload/dokument/halsa_och_vard/hitta_ratt_i_varden/funktionshinder/hjalpmedel/förskrivningsblankett.doc ) [12] => array ( [link_form] => https://www.nllplus.se/upload/ib/pv/hjpmk/blanketter/särskild%20förskrivning.pdf ) [13] => array ( [link_form] => https://www.nllplus.se/upload/ib/pv/hjpmk/hjälpmedelsportalen/lathund%20särskild%20förskrivning.doc ) [14] => array ( [link_form] => http://www.skane.se/public/hab/hjalpmedelshandbok/100-allmanna-riktlinjer.pdf ) [15] => array ( [link_form] => http://www.slso.sll.se/upload/hjalpmedel_stockholm/blanketter/enstaka%20produkt%202012-12-04.doc ) [16] => array ( [link_form] => http://www.liv.se/sidkat/4072/regelverk%20ota%20090205.pdf ) [17] => array ( [link_form] => http://www.liv.se/sidkat/4072/skrivelse%20gallande%20upphandling-05.doc ) [18] => array ( [link_form] => http://www.liv.se/sidkat/4072/remissota.pdf ) [19] => array ( [link_form] => http://www.lvn.se/pagefiles/2548/fillistning/riktlinjer%20för%20förskrivning%20av%20hjälpmedel%20i%20landstinget%20västernorrland%20pdf.pdf ) [20] => array ( [link_form] => http://www.lvn.se/pagefiles/12448/flödesschema%20ordnat%20införande%20produktgrupp_20111025.pdf ) [21] => array ( [link_form] => http://www.lvn.se/pagefiles/6071/blanketter/beställningsblanketter/beställning%20medicintekniska%20hjälpmedel,%20120316.pdf ) [22] => array ( [link_form] => http://www.lvn.se/pagefiles/6071/blanketter/beställningsblanketter/bilaga%20b,%20hjälpmedel%20för%20stå%20och%20gå%20120313.pdf ) [23] => array ( [link_form] => http://www.vgregion.se/sv/omrade-hjalpmedel/har-du-en-ide-om-vad-vi-kan-gora-battre/synpunkter-pa-hjalpmedelscentralernas-sortiment/ ) [24] => array ( [link_form] => http://www.vgregion.se/upload/handbok%20för%20förskrivning%20av%20personliga%20hjälpmedel/hjälpmedelsansökan%20gbg%202011-02-22.doc ) [25] => array ( [link_form] => http://www.orebroll.se/files-sv/Örebro%20läns%20landsting/vård%20och%20hälsa/habilitering/centrum%20för%20hjälpmedel/förskrivarportal/blanketter/förskrivning%20av%20tekniska%20hjälpmedel.doc ) [26] => array ( [link_form] => http://www.lio.se/patientinformation/hjalpmedel-och-handikappservice/hjalpmedelsforskrivning/forskrivningsratt-for-hjalpmedel/ ) [27] => array ( [link_form] => http://www.lio.se/pages/37692/behorighet%20bestallare%20landsting.pdf ) [28] => array ( [link_form] => http://www.lio.se/pages/37692/behorighet%20forskr%20landsting%2020090702.pdf ) ) there no error. 

question wrong input string , why there no matches?

your input string not string, it's array.

foreach ($url $u) {     preg_match_all(..., $u['link_form'], $matches); } 

Comments

Popular posts from this blog

java - Jmockit String final length method mocking Issue -

asp.net - Razor Page Hosted on IIS 6 Fails Every Morning -

c++ - wxwidget compiling on windows command prompt -