Mangateque administrable sans bdd, utilisation de simplexml

Description

Cette mangateque vous permet de gérer votre colection de manga.
Elle est utilisable sans aucune Base de Données puisqu'elle utilise un fichier XML.
L'utilisation du fichier XML est faite grace à la classe SimpleXML, pour cela le serveur doit accepter le PHP5 (d'où les extension .php5).
Entre autre option, on apprend ici à ouvrir-créer un XML et y ajouter-éditer-supprimer un noeud, le tout avec PHP.

--version mono--
Vous remarquerez que le XML contient d'autres infos, elles serviront à terme pour une gestion multi-utilisateurs.

--version multi--
n'importe qui peut visualiser l'ensemble des mangateques, mais seul le créateur d'une mangateque peut la modifier, il peut également uploader un CSS pour modifier ça mise en forme
-> il suffit de lancer le fichier install.php

Source / Exemple :


<?
echo "tout est dans le ZIP";

//exemple de sauvegarde d'un fichier XML
// \n --> Nouvelle ligne (linefeed, LF ou 0x0A (10) en ASCII) 
// \r --> Retour à la ligne (carriage return, CR ou 0x0D (13) en ASCII) 
// \t --> Tabulation horizontale (HT ou 0x09 (9) en ASCII)
	$contenu = "<?xml version='1.0' encoding=\"ISO-8859-1\" standalone='yes'?>\r\n";
	$contenu .= "<animes>\r\n";
	$contenu .= "\t<option>\r\n";
	$contenu .= "\t\t<title>".$xml->option[0]->title."</title>\r\n";
	$contenu .= "\t\t<name>".$xml->option[0]->name."</name>\r\n";
	$contenu .= "\t\t<img>".$xml->option[0]->img."</img>\r\n";
	$contenu .= "\t\t<css>".$xml->option[0]->css."</css>\r\n";
	$contenu .= "\t</option>\r\n";
	
	$classe  = 0;
	foreach ($xml->xpath('//anime') as $anime) {
		if ($classe <> $id) { //on compare la variable incrémenté $classe à la position de la ligne à supprimer $id
			$contenu .= "\t<anime>\r\n";
			$contenu .= "\t\t<nom>".$anime->nom."</nom>\r\n";
			$contenu .= "\t\t<episodes>".$anime->episodes."</episodes>\r\n";
			$contenu .= "\t\t<total>".$anime->total."</total>\r\n";
			$contenu .= "\t</anime>\r\n";
		} else {
			//on n'additionne pas la valeur, elle est donc supprimer
		}
		$classe++;
	}
	$contenu .="</animes>";
	@unlink($fichier);				//on supprime l'ancien fichier
	$fp = fopen($fichier,"w");		//on créé le nouveau fichier
	fseek($fp,0);					//on se met au debut du fichier
	fwrite($fp,$contenu);			//on met la nouvelle valeur
	fclose($fp);					//on ferme le fichier.

?>

Conclusion :


faites <? phpinfo(); ?> pour connaitre la version de PHP sur votre serveur

la version multi-utilisateur est opérationelle sur http://mangateque.nacedo.eu/

merci à http://www.php.net/manual/fr/ref.simplexml.php

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.