Aller au contenu

nhood75

Membre
  • Compteur de contenus

    4
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre

Information du profil

  • Société
    Robin Rumeau
  1. Bon bah j'ai trouvé ma réponse: En fait pour utiliser à l'uintérieure d'une fonction une ressource déclarée à l'extérieur, il faut signaler à cette fonction que cette ressource est GLOBAL si j'ai: $conn = bablalbalblab ; et que je veux utiliser $conn dans une fonction, il faudra que j'écrive: function maFonction() { GLOBAL $conn; $conn .= blalbalbalba ; ...... } Voilou, c'était tout bête mais fallait le savoir. C'était pas mon cas !!! Merci à tous, Salut, Robin
  2. Merci de ta réponse. En fait non, je clôture une première fois ma requête SQL par ";" puis ma ligne PHP par ";". Si je fais un echo de ma requête SQL une fois éxécutée j'ai bien une requête qui s'éxécute sans problème en direct dan WAMPServer. D'ailleurs le problème est le même si je met une requête toute conne comme: SELECT * FROM rubriques; J'ai exactement le même message. Mes requêtes sont correcte c'est mas ressource qui ne fonctionne pas dans une fonction... j'ai l'impression...
  3. Bonjour à tous ! Bon me voilà à mon tour dans la panade. Je suis entrain d'essayer de développer une fonction qui puisse me permettre de supprimer une rubrique. Pourquoi une fonction? Parceque la rubrique que je veux supprimer peut avoir 0 ou plusieurs sous rubriques qui elle même peuvent avoir des sous rubrique ou des pages "cible".... Bref, la seule issue à cette spirale infernale était une fonction récursive... function deleteTree($id_rubrique) { $sql= "SELECT id_rubrique, fichier, rubrique_id FROM rubriques WHERE rubrique_id = ".$id_rubrique.";"; $result= mysql_query($sql,$conn); while($row = mysql_fetch_object($result)){ deleteTree($row->id_rubrique); $sql2 = "SELECT id_cible, type, fichier FROM cibles WHERE rubrique_id = ".$row->id_rubrique.";"; $result2 = mysql_query($sql2,$conn); while($row2 = mysql_fetch_object($result)){ if(unlink('medias/'.$row2->type.'/'.$row2->fichier)){ $sql3 = "DELETE FROM cibles WHERE id_cible =".$row2->id_cible." ;"; $result3 = mysql_query($sql3,$conn); $row3 = mysql_affected_rows($conn); } } if(unlink('medias/rubrique/'.$row->fichier)){ $sql4 = "DELETE FROM rubriques WHERE id_rubrique =".$row->id_rubrique." ;"; $result4 = mysql_query($sql4,$conn); $msg = "opération terminée"; } } } cela me donne un message d'erreur MySQL: Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\wamp\www\blabla\site\bo\_rubriques.php on line 24 J'avoue que je suis un peu perdu là. Vous l'aurez compris, je n'ais pas rédigé souvent des fonctions et pour être tout à fait franc, il s'agit de ma toute remière fonction récursive ! Des suggestions? Merci à tous Edit modérateur : lorsque tu as une grande quantité de code à poster, tu dois l'entourer de balises CODEBOX. Cela facilite la lecture de ton code pour ceux qui pourront t'aider. j'ai édité ton post en ce sens.
  4. nhood75

    supprimer un repertoire

    Salut ! Bon je crois que j'ai la solution a ton problème. Je me suis retrouvé confronté au même problème. La difficulté réside dans le fait qu'un répertoire ne sera pas supprimé tant qu'il n'est pas vide de son contenu, que ce soit des fichiers (ça encore ça va) ou d'autres répertoires (ce qui rend les choses franchement plus compliquée !). La seule solution: une fonction récursive! Voici le code de la fonction: function del_dir($dir) { $current_dir = opendir($dir); while($entryname = readdir($current_dir)) { if(is_dir("$dir/$entryname") and ($entryname != "." and $entryname!="..")) { del_dir("${dir}/${entryname}"); } elseif($entryname != "." and $entryname!="..") { unlink("${dir}/${entryname}"); } } //Fin tant que closedir($current_dir); rmdir(${dir}); } Dans ton code à toi il suffira d'appeller la fonction par del_dir("ton répertoire à supprimer"); Voilou, @+, Robin Rumeau
×
×
  • Créer...