~ Mon archive de fics ~

Cher journal,

Aïe! Impossible de se connecter à la base. Si le problème persiste, il faut contacter Axel (code d'erreur 405)."); //MYSQL_connect("localhost",root,'') or die("
Aïe!
Impossible de se connecter à la base. Si le problème persiste, il faut contacter Axel (code d'erreur 405)."); @mysql_select_db("narudiary") or die("
Aïe!
Impossible de sélectionner la base. Si le problème persiste, il faut contacter Axel (code d'erreur 402)."); //L'ordre d'affichage par défaut $order = "ff.title"; //Le contenu par défaut de la clause FROM $queryfrom = "fanfic ff,genre g,chapter chp,author aut,author_fanfic a_f"; //Le contenu par défaut de la clause WHERE $querywhere = "ff.genre=g.numgenre AND chp.numfanfic=ff.numfanfic AND a_f.numfanfic=ff.numfanfic AND aut.numauthor=a_f.numauthor"; //Le contenu par défaut de la clause GROUP BY (utile pour éviter les répétitions) $group = "ff.numfanfic"; //au cas ou le display alphabétique est utilisé if ($alphadisplay != "") { switch($alphadisplay) { case "[A-Z]": break; case "[0-F]": $querywhere = "$querywhere AND ff.title BETWEEN \"0%\" AND \"G%\""; break; case "[G-L]": $querywhere = "$querywhere AND ff.title BETWEEN \"G%\" AND \"M%\""; break; case "[M-R]": $querywhere = "$querywhere AND ff.title BETWEEN \"M%\" AND \"S%\""; break; case "[S-Z]": $querywhere = "$querywhere AND ff.title BETWEEN \"S%\" AND \"Z%\""; break; } } //au cas ou le display auteurs est utilisé if ($authordisplay != "") { switch($authordisplay) { case "[A-Z]": break; case "[0-F]": $querywhere = "$querywhere AND aut.name BETWEEN \"0%\" AND \"G%\""; break; case "[G-L]": $querywhere = "$querywhere AND aut.name BETWEEN \"G%\" AND \"M%\""; break; case "[M-R]": $querywhere = "$querywhere AND aut.name BETWEEN \"M%\" AND \"S%\""; break; case "[S-Z]": $querywhere = "$querywhere AND aut.name BETWEEN \"S%\" AND \"Z%\""; break; } } //au cas où le display genre est utilisé if(($genredisplay != "")and($genredisplay !="All")) { $querywhere = "$querywhere AND g.genre=\"$genredisplay\""; } //au cas où le display new est utilisé if($newsdisplay == "1") { $queryfrom = "$queryfrom,new n"; $querywhere = "$querywhere AND n.numfanfic=ff.numfanfic"; } //au cas où le champ titre a été renseigné if ($selection != "") { $querywhere = "$querywhere AND ff.title LIKE \"%$selection%\""; } //au cas ou le champ type est renseigné if (($searchgenre != "All") and ($searchgenre != "")) { $querywhere = "$querywhere AND g.genre=\"$searchgenre\""; } //au cas où le champ searchauteur est renseigné if ($searchauteur != "") { $querywhere = "$querywhere AND aut.name LIKE \"%$searchauteur%\""; } //au cas où le champ searchmail est renseigné if ($searchemail != "") { $querywhere = "$querywhere AND aut.email LIKE \"%$searchemail%\""; } if ($mois == "") $mois = 1; if ($jour == "") $jour = 1; if ($jour > 31) $jour = 31; if ($mois > 12) $mois = 12; $ficdate = "$année-$mois-$jour"; if ($searchdatetype == "before") { $querywhere = "$querywhere AND chp.chapdate <= \"$ficdate\""; } if ($searchdatetype == "after") { $querywhere = "$querywhere AND chp.chapdate >= \"$ficdate\""; } if ($searchsize == "less") { $querywhere = "$querywhere AND chp.size <= \"$kbsize\""; } if ($searchsize == "more") { $querywhere = "$querywhere AND chp.size >= \"$kbsize\""; } if ($searchorder == "date") $order = "chp.chapdate"; if ($searchorder == "size") $order = "chp.size"; if ($searchorder == "auteur") $order = "aut.name"; if ($searchorder == "title") $order = "ff.title"; if ($descorder == "decroiss") { $orderdesc = "DESC"; if ($searchorder == "default") $order = "ff.title DESC, chp.numchap"; } $myquery = "SELECT ff.numfanfic,ff.title,ff.homepage,ff.descfre,g.genre FROM $queryfrom WHERE $querywhere GROUP BY $group ORDER BY $order"; //print "




Requête: $myquery
"; $queryresult = MYSQL_QUERY($myquery) or die("
Aïe! Impossible d'exécuter la requête principale. Si le problème persiste, je vais devoir contacter Axel (code d'erreur 412)"); $numrows = MYSQL_NUM_ROWS($queryresult); if ($numrows == 0) { print "
Hmmm... Les critères de recherche que le visiteur a choisi ne correspondent à aucun fanfic dans l'archive. Si j'étais lui je réessayerais avec d'autres options!


"; } else { print "
Aujourd'hui j'ai trouvé $numrows fanfics comme je voulais! Génial, non?


"; } Print"

"; $i1=0; while ($i1 < $numrows) { $numfanfic = mysql_result($queryresult,$i1,"ff.numfanfic"); $ficname = mysql_result($queryresult,$i1,"ff.title"); $descfrench = mysql_result($queryresult,$i1,"ff.descfre"); $homepage = mysql_result($queryresult,$i1,"ff.homepage"); $genre = mysql_result($queryresult,$i1,"g.genre"); PRINT" "; //création de la requête pour les auteurs $myqueryauthor="SELECT * FROM author aut,author_fanfic a_f WHERE a_f.numfanfic=$numfanfic AND a_f.numauthor=aut.numauthor"; $queryauthorresult=mysql_query($myqueryauthor) or die("
Aïe! Impossible d'exécuter la requête des auteurs. Si le problème persiste, il faut contacter Axel (code d'erreur 412)"); $numrowsauth=mysql_num_rows($queryauthorresult); $i2=0; //afficher le ou les auteurs if ($numrowsauth!=0) { print ""; $i2++; } } //création de la requête pour les chapitres $myquerychapter="SELECT * FROM chapter chp WHERE chp.numfanfic=$numfanfic"; $querychapterresult=mysql_query($myquerychapter) or die("
Aïe! Impossible d'exécuter la requête des chapitres. Si le problème persiste, il faut contacter Axel (code d'erreur 412)"); $numrowschap=mysql_num_rows($querychapterresult); $i2=0; //on recueille les infos de la première ligne pour tester si c'est un one-shot(numchap=0) ou pas $size=mysql_result($querychapterresult,$i2,"chp.size"); $numchap=mysql_result($querychapterresult,$i2,"chp.numchap"); $chapurl=mysql_result($querychapterresult,$i2,"chp.fileurl"); $chaplabel=mysql_result($querychapterresult,$i2,"chp.label"); $chapdate=mysql_result($querychapterresult,$i2,"chp.chapdate"); print "
$ficname"; while ($i2 < $numrowsauth) { $name=mysql_result($queryauthorresult,$i2,"aut.name"); $numauthor=mysql_result($queryauthorresult,$i2,"aut.numauthor"); print "$name
"; //affichage de la homepage de la fic et pas forcément de l'auteur if ($homepage != "") { print "
"; if($numchap==0) { if ($size != 0) { Print "Lire ($size Ko)"; } else { Print "Lire"; } if ($chapdate != "0000-00-00") { $annee = substr($chapdate,0,4); $mois = substr($chapdate,5,2); $jour = substr($chapdate,8,2); Print " - $jour/$mois/$annee"; } } else { if ($size != 0) { Print "$chaplabel ($size Ko)"; } else { Print "$chaplabel"; } if ($chapdate != "0000-00-00") { $annee = substr($chapdate,0,4); $mois = substr($chapdate,5,2); $jour = substr($chapdate,8,2); Print " - $jour/$mois/$annee"; } $i2++; while ($i2 < $numrowschap) { $size=mysql_result($querychapterresult,$i2,"chp.size"); $numchap=mysql_result($querychapterresult,$i2,"chp.numchap"); $chapurl=mysql_result($querychapterresult,$i2,"chp.fileurl"); $chaplabel=mysql_result($querychapterresult,$i2,"chp.label"); $chapdate=mysql_result($querychapterresult,$i2,"chp.chapdate"); if ($size != 0) { Print "
$chaplabel ($size Ko)"; } else { Print "
$chaplabel"; } if ($chapdate != "0000-00-00") { $annee = substr($chapdate,0,4); $mois = substr($chapdate,5,2); $jour = substr($chapdate,8,2); Print " - $jour/$mois/$annee"; } $i2++; } } Print "
"; if($genre != "") { print "Genre: $genre"; } Print "
$descfrench"; print "
$homepage"; } print "

"; $i1++; } ?>

Naru Narusegawa


L'AFME (Asuka Fanfiction Management Engine) est une création originale d'Axel Terizaki et d'OrcRys. Si vous êtes intéressés par l'implémentation de ce système sur votre site Web, veuillez contacter Axel