Obtenir le nombre d'entrées dans un tableau
11:56:19 [Nexus] globule ~ $ cat pom.php
<?php
for($i=0; $i<10; $i++) {
echo $i;
if ($i == 5) break;
}
?>
11:56:25 [Nexus] globule ~ $ php pom.php
012345
11:56:28 [Nexus] globule ~ $
Le break permet de sortir du for, par du if.
As tu vérifié que tu sors bien du for avec des echo ?
Ou alors, si tu fais tous les trucs du for, c'est que ton if ne se fait pas et que donc $checked est vide.
C'est bizzare car avec ça :
<?
for ($i=1;$i<$nb_champs;$i++)
{
$nom_champ=mysql_field_name($requete, $i);
for ($j=0; $j<count($exploded_rc);$j++)
{
if ($exploded_rc[$j]==$nom_champ)
{
$checked = "checked='checked'";
echo "test ok";
}
else
{
$checked = "";
}
}
// Alternance des couleurs
if ($c==$c1) $c=$c2; else $c=$c1;
echo "
<tr bgcolor='$c'>
<td>";
// Test si le champ est protégé ou pas
if ($i<15) echo "<font color='#ff0000'>[*]</font>";
echo checkchamp($nom_champ);
// Test si le champ est affiché ou pas
//if ($r['afficher_c'] == 1) $checked = "selected='selected'";
$type_champ = mysql_field_type($requete, $i);
// Enleve le _u devant le nom de champ
echo ereg_replace("_u", "", $nom_champ);
echo "</td>
<td align='center'>$type_champ</td>
<td align='center'><input type='checkbox' $checked/></td>
<td align='center'>
<a href='?page=gestion_champs&action=del_champ&champ=$nom_champ' class='delete' title='Supprimmer' />X</a>
</td>
</tr>";
//$req = mysql_query("insert into champ (titre_c, type_c, etat_c, afficher_c, idchamp_c) values('$nom_champ', '$type_champ', '',1, $i)") or die('erreur');
}
echo "</table>";
?>
le "test ok" n'apparit qu'une seule fois alors que les deux valeurs sont identiques...
J'avoues ne pas comprendre là :S
Webmaster de Clikmag http://www.clikmag.fr
Si ton test n'apparait qu'une fois, c'est que le if n'est fait qu'une fois et donc que les deux valeurs ne sont identiques qu'une fois.
le 03/04/2007 à 16:21
i M@N
Hello !
Petite question au passage @ La Globule : comment tu fais pour exécuter le script depuis ton shell stp ?
[Nexus] globule ~ $ cat pom.php
@+...
One Love, One Heart, One Unity.
le 03/04/2007 à 16:22
i M@N
arf je voulais dire
[Nexus] globule ~ $ php pom.php
One Love, One Heart, One Unity.
Ben j'ai php d'installé sur ma machine, c'est tout :)
le 03/04/2007 à 17:02
i M@N
Reuh ...
moi aussi :
iman@ubuntu:~$ whereis php5
php5: /etc/php5 /usr/lib/php5 /usr/share/php5
Pourtant :
iman@ubuntu:~$ php5 test.php
bash: php5 : commande introuvable
Skoi l'astuce ?
@+...
One Love, One Heart, One Unity.
Ce que tu montres la ne montre pas que tu as la version binaire de PHP d'installée.
Tu as des lib PHP, c'est tout, mais ptet pas le binaire.
Installe la version CLI de PHP et ca ira mieux.
le 03/04/2007 à 17:28
i M@N
Reuh ...
Wé ... après une recherche je viens d'installer php5-cli et bien que ce soit le bon paquet (cli = command line interpreter) quand je lance un script (genre <?php echo "toto"; ?> ) en console ça me sort kedal. :-/
iman@ubuntu:~$ php test.php
iman@ubuntu:~$ [t]u:~$ << là ça devrait écrire toto mais j'ai juste une partie de l'invite avec un curseur sur le [t] ... chelou.
iman@ubuntu:~$
@+...
One Love, One Heart, One Unity.
Voila pourquoi gentoo ca poune et qu'ubuntu c'est de la merde :)