|
|
|
|
Posté par
Yull Master, le jeudi 11 octobre 2007 à 09:50:44<body>
<form method="POST" action="Saveliste.php">
<table style="border-collapse: collapse;">
<tr><th style="border: 0px;" VALIGN="top" ALIGN="center"><img src="images/H.jpg" border= "0"/></th></tr>
<tr><th style="border: 0px;" VALIGN="top" ALIGN="center">
<p>
<h5>
Amis :<br><br>
<?
include("Conect.php");
if (isset($_SESSION['Login']))
{
$numa = $_SESSION['Login'];
}
else
{
include("VLog2.php");
}
if (isset($_GET['pagela']))
{
$pagela = $_GET['pagela']; // On récupère le numéro de la page
}
else
{
$pagela = 1; // défaut
}
//nb de amis par page
$nombreDelistesParPage = 10;
// On calcule le numéro du premier ami qu'on prend pour le LIMIT de MySQL
$premierlisteAafficher = ($pagela - 1) * $nombreDelistesParPage;
// On récupère le nombre total de amis
$retourliste = mysql_query("SELECT COUNT(*) AS nb_amis FROM individu WHERE Num_ind<>1");
$donneesliste = mysql_fetch_array($retourliste);
$totalDeslistes = $donneesliste['nb_amis'];
// On calcule le nombre de pages à créer
$nombreDePagesliste = ceil($totalDeslistes / $nombreDelistesParPage);
// On récupère les 3 dernières news
$retourliste = mysql_query("SELECT Nom_ind, Num_ind, conect FROM individu WHERE Num_ind<>1 and Num_ind<>'$numa' ORDER BY Num_ind ASC LIMIT " . $premierlisteAafficher . ', ' . $nombreDelistesParPage);
$retourliste2 = mysql_query("SELECT Num_amis, Ind_amis FROM amis WHERE Ind_amis='$numa' ORDER BY Num_amis ASC LIMIT " . $premierlisteAafficher . ', ' . $nombreDelistesParPage);
$nb=0;
while ($donneesliste = mysql_fetch_array($retourliste))
{
$nb++;
$donneesliste2 = mysql_fetch_array($retourliste2);
$xa = $donneesliste['Num_ind'];
$ya = $donneesliste['conect'];
foreach($donneesliste2 as $cle=>$valeur){ ----------------> ligne 84
// et tu mets ça dans un array
if( substr($cle,0,8)=="Num_amis"){ // si le nom du champ commence par "Numrss"
$index=substr($cle,8); // tu retrouves le numéro du rss et ça te servira de cle pour l'array
$array_numamis[$index]=$valeur;
}
if( substr($cle,0,8)=="Ind_amis"){ // si le nom du champ commence par "Chemin,"
$index=substr($cle,8); // tu retrouves le numéro du Chemin et ça te servira de cle pour l'array
$array_indamis[$index]=$valeur;
}
}
foreach($array_numamis as $cle=>$value){
$za=$value; // recup numero rss
$wa=$array_indamis[$cle];
?>
<table style="border-collapse: collapse;">
<tr><th style="border: 0px;" VALIGN="top" ALIGN="center">
<?
if (($za == $xa) AND ($wa == $numa))
{
?>
<input type="checkbox" name="amis" id="ami" CHECKED />
<?
}
else
{
?>
<input type="checkbox" name="amis" id="ami"/>
<?
}
}
?>
<input type="hidden" name="<?php echo $za.$nb ; ?>" tabindex="10" value="<? echo $donneesla['Num_amis'];?>" />
<input type="text" style="border: 0px; color: rgb(48,117,192); font-size: 15px; font-family: Papyrus; text-align: center;" name="<?php echo $xa.$nb ; ?>" tabindex="20" value="<? echo $donneesliste['Nom_ind'];?>"
onClick="window.open('View.php?numv=<? echo $xa ?>',null,'width=815,height=800, status=yes, directories=yes, toolbar=yes, location=yes, menubar=yes, scrollbars=yes, resizable=yes');">
<?
if ($ya==1)
{
echo "<FONT COLOR=green>(connecté)</FONT>";
}
else
{
echo "<FONT COLOR=red>(non connecté)</FONT>";
}
?>
</th></tr>
</table>
<br><br>
<?
} // Fin de la boucle des news
?>
</th></tr>
<br /></h5>
<tr><th style="border: 0px;" VALIGN="top" ALIGN="center">
<p><br /><input type="submit" value="Modifier"></p></th></tr>
</table>
</form>
<br>
<img src="images/B.jpg" border= "0"/>
</p>
</body>
Configuration: Windows 2000 Firefox 2.0.0.7
Avant de faire un foreach, il faut toujours vérifier qu'il y ait au moins un élément dans le tableau :
if(count($donneesliste2)){
foreach($donneesliste2 as $cle=>$valeur){ ----------------> ligne 84
// et tu mets ça dans un array
if( substr($cle,0,8)=="Num_amis"){ // si le nom du champ commence par "Numrss"
$index=substr($cle,8); // tu retrouves le numéro du rss et ça te servira de cle pour l'array
$array_numamis[$index]=$valeur;
}
if( substr($cle,0,8)=="Ind_amis"){ // si le nom du champ commence par "Chemin,"
$index=substr($cle,8); // tu retrouves le numéro du Chemin et ça te servira de cle pour l'array
$array_indamis[$index]=$valeur;
}
}
}
Jeff - Wm@Ccm - |
Merci Jeff de te pencher sur mon probleme.
la est bien le soucis en faite dans mon array, je peu parfois ne pas avoir d'elements. En gros je cherche dans ce code a resortir toutes les personens inscritent et a mettre une checkbox coché a coté de ceux que j'ai declaré comme etant mes amis. il se peu donc qu'il n'exite pas de Num_amis et de Ind_amis. comment faire donc soit pour leurs donner une valeurs malgré tout ou pour ne pas afficher les erreurs que cela produits cdt Yull |
pour ne pas afficher les erreurs que cela produit, ce qui revient à faire la politique de l'autruche, il suffit de précéder foreach de @ :
@foreach Jeff - Wm@Ccm - |
Oui, je sais que ce n'est pas le mieu. Mais mon code fonctionne malgré les erreurs. Pour le moment je n'ai pas trouver de meilleur solution donc temporairement cela me permet d'avoir un truc qui marche en attendant de trouver mieu
en totu cas merci de ton aide Jeff ^^ Edit : je viens d'essayer avec le @ devant foreach et ca me sort une parse error |
Quelqu'un aurai t'il une autre solution a me proposer ? |
| 27/03 16h03 | [PHP] Méthodes de débogage | PHP |
| 06/11 19h24 | [PHP] Upload de fichiers | PHP |
| 25/10 16h23 | [Webmaster] Afficher facilement le code php/xhtml de vos pages | Webmaster |
| 17/04 20h50 | Page, doc et tutoriaux officiels | PHP |
| 20/04 18h59 | [PHP] Fonction mail() | PHP |
| 24/07 15h31 | PHP + BDD + foreach | 2 |
| 01/04 15h36 | PB PHP array | 2 |
| 22/07 20h41 | [php array] 2 dimensions / 3 colonnes | 7 |
| 08/07 15h11 | [PHP] Array + variables dynamiques | 4 |
| 27/02 09h55 | [php] array | 8 |
![]() | PHP Edit - PHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de... | Catégorie: PHP Licence: Freeware/gratuit |
![]() | WAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de... | Catégorie: Serveurs Licence: Freeware/gratuit |
![]() | easyPHP - EasyPHP est un environnement de travail packagé comprenant le serveur web Apache, le système de gestion de bases de données... | Catégorie: Serveurs Licence: Open Source |
![]() | PSPad - PSPad est un excellent éditeur de texte. Il est utile pour travailler sur du simple texte, mais aussi sur du HTML, CSS,... | Catégorie: Développement Licence: Freeware/gratuit |
![]() | HP Modular Smart Array | Catégorie: Carte Réseau | 360.00 € Compufirst |