preg_match_all проблем

Acho

Registered
Имам следният код:

Код:
$actors = trim("nm0000061, nm0955195, nm0634313".",");

$word = preg_match_all('/(.*?),/', $actors, $out);

foreach($out[1] as $current){

$actor = addslashes($current);
echo $actor;

$query = mysql_query("SELECT `name` FROM `movies_actors` WHERE `imdbID`='$actor'") or die(mysql_error());
$row2 = mysql_fetch_array($query);
$actorreal = $row2['name'];
echo $actorreal;

}

От променливата $actors трябва да отделя всеки код - в случая съотвено nm0000061, nm0955195 и nm0634313, така че за всеки поотделно да се изпълни този код:

Код:
$query = mysql_query("SELECT `name` FROM `movies_actors` WHERE `imdbID`='$actor'") or die(mysql_error());
$row2 = mysql_fetch_array($query);
$actorreal = $row2['name'];
echo $actorreal;

Да ама се изпълнява само за първият код(nm0000061), не си намирам грешката.

Ще съм благодарен ако помогнете. :)
 
Оправих се. Проблемът беше, че трябва да използвам trim(), за да махна разстоянията и кодовете да могат да се намират.
 
И също ... preg_match_all() не се слага в променлива, все пак като трети параметър задаваш с каква променлива да изкарваш резултатите.

И друго - по-удобно ще е в патерна да направиш така /([a-z0-9]+)/i . Ако не греша трябва да ти изкара пак всеки код отделно.
 

Back
Горе