|
|
|
|
$ref=$_GET['ref'];
$image=$_GET['image'];
$sql="select ref,annexes from contenuofficiel where ref='".$ref."'";
$query=mysql_query($sql) or die(mysql_error());
while( $del=mysql_fetch_array($query) ) {
$exploAnn=explode('||',$del['annexes']);
foreach($exploAnn as $Image) {
if( preg_match('/.jpg|.png|.gif|.jpeg/i',$Image) ){
echo "fichier image<br />";
if( preg_match("/$image/",$Image)) {
echo 'cible';
}
}
}
}
Configuration: Windows Vista Opera 9.62
bonjour,
imbriquer une boucle for each dans une boucle while est impossible, il faut utiliser l'une des 3 méthodes suivantes : Il existe 3 façons de parcourir un tableau associatif. La plus courante et la plus évidente c'est : //solution 1 foreach ($maTable as $maCle => $maValeur) { //mon code } mais on peut également faire : //solution 2 while (list($maCle,$maValeur) = each($maTable)) { //mon code } //et solution 3 while ($monProchainElement = next($maTable)) { //mon code }
|
Bonjour
Bien sûr que si on peut imbriquer une boucle foreach à l'intérieur d'un boucle while. Un foreach ne permet pas de balayer les résultats d'une requête (ils sont fournis sous forme d'une ressource, pas d'un tableau). Peux-tu préciser si $Image semble vide lors du deuxième passage dans le foreach ou s'il disparaît entre le preg_match('/.jpg|.png|.gif|.jpeg/i',$Image) et le preg_match("/$image/",$Image) ? |
Bonjour toto et désolé de répondre aussi tard^^
J'ai modifié mon projet pour passer au delà de ce problème, mais il m'intrigue et j'aimerais bien trouver une solution^^ Dans mes souvenirs, $Image semble vide après la première regexp^^ |
Résultats pour boucle foreach capricieuse
Résultats pour boucle foreach capricieuse
Résultats pour boucle foreach capricieuse
Résultats pour boucle foreach capricieuse
Résultats pour boucle foreach capricieuse