begin process at 2010 03 20 11:31:20
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > SYSTÈME DE NEWS AVEC PLUSIEURS FONCTIONALITÉS

SYSTÈME DE NEWS AVEC PLUSIEURS FONCTIONALITÉS


 Information sur la source

Note :
8,67 / 10 - par 3 personnes
8,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Niveau :Débutant Date de création :09/11/2004 Date de mise à jour :13/11/2004 19:19:44 Vu / téléchargé :4 254 / 723

Auteur : DrK_Worm

Ecrire un message privé
Site perso
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

 Description

Ce systeme de news permet d'insérer des news, de les afficher, avec en plus une gestion des admins. Le code réalisé est assez simple, je pense.
N'oubliez pas de créer un dossier "sessions" si vous etes sur free.

J'ai juste un problème sur la vérification pour voir si l'utilisateur s'est bien loggé. J'ai fait un fichier verif.php, mais j'ai quelques problèmes avec. Donc je ne l'ai pas inclus pour protéger les pages, pour que vous puissez utiliser le systeme des maintenant :)

J'ai mis en complément un bouton retour qui peut nuire à la clarté du texte mais ce bouton me semble pratique... Un petit exemple en bas mais téléchargez le zip!

C'est mon premier post alors un peu d'indulgence :)


Source

  • <?php
  • session_start();
  • //Fichier de configuration
  • include('config.php');
  • //Si on clique sur OK
  • if(isset($_POST['OK']))
  • {
  • //On se connecte à la bdd
  • mysql_connect($serveur_z,$login_z,$pass_z);
  • mysql_select_db($base_z);
  • //On définie les variables de formulaire
  • $login = $_POST['login'];
  • $pass = $_POST['pass'];
  • //Si les champs login ou pass sont vides,
  • if(empty($login) OR empty($pass))
  • {
  • //On affiche un message d'erreur le fameux bouton retour...
  • echo 'Vous avez oublié de remplir un champ
  • <form name="formulaire">
  • <input type="button" value="retour" onclick="retour()" />
  • </form>
  • <script type="text/javascript">
  • function retour()
  • {
  • history.back();
  • }
  • </script>
  • ';
  • exit();
  • }
  • else
  • {
  • //On séléctionne dans la bdd ou le pass du formulair est égal à celui de la bdd
  • $sql = "SELECT pass and login from admin where pass='$pass' and login='$login'";
  • $req = mysql_query($sql);
  • //On compte le nombre de résultats
  • $nombre = mysql_num_rows($req);
  • //Si le résultat est différent de 1
  • if($nombre!="1")
  • {
  • //On affiche un message d'erreur
  • echo'Mauvais nom d\'utilisateur/mot de passe
  • <form name="formulaire">
  • <input type="button" value="retour" onclick="retour()" />
  • </form>
  • <script type="text/javascript">
  • function retour()
  • {
  • history.back();
  • }
  • </script>
  • ';
  • return;
  • exit();
  • }
  • else
  • {
  • //Sinon on affiche la page avec le menu et on définie la variable de session
  • $_SESSION['login'] = $login;
  • $_SESSION['pass'] = $pass;
  • echo"<link rel=\"stylesheet\" href=\"style.css\"><div align=\"center\"><a href=\"insert.php\">Insérer une news</a><br /><br /><a href=\"admin_ajouter.php\">Ajouter un Admin</a><br /><br /><a href=\"admin_gestion.php\">Gestion des Admins</a><br /><br /><a href=\"../index.php\">Retour au site</a></div>";
  • }
  • }
  • }
  • //Si on a pas encore cliqué sur OK on affiche le formulaire
  • else
  • {
  • ?>
  • <link rel="stylesheet" href="style.css" />
  • <form action="<?php=$PHP_SELF?>" method="POST">
  • <table align="center" border="0">
  • <tr><td class="tds" align="center">Nom d'utilisateur</td>
  • <tr><td class="tds" align="center"><input type="text" name="login" maxlength="50" size="10"></tr></td>
  • </tr>
  • <tr>
  • <td class="tds" align="center">Mot de passe</td>
  • <tr><td class="tds" align="center"><input type="password" name="pass" maxlength="8" size="5"></td></tr>
  • </tr>
  • </table><br />
  • <center><input type="submit" name="OK" value="OK"></center>
  • </form>
  • <?php } ?>
<?php

session_start();

//Fichier de configuration
include('config.php');

//Si on clique sur OK
if(isset($_POST['OK']))
{
	//On se connecte à la bdd
	mysql_connect($serveur_z,$login_z,$pass_z);
	mysql_select_db($base_z);

	//On définie les variables de formulaire
	$login = $_POST['login'];
	$pass = $_POST['pass'];

	//Si les champs login ou pass sont vides,
	if(empty($login) OR empty($pass))
	{
		//On affiche un message d'erreur le fameux bouton retour...

		echo 'Vous avez oublié de remplir un champ
		<form name="formulaire">
  		<input type="button" value="retour" onclick="retour()" />
		</form>
		<script type="text/javascript">
		function retour()
			{
				history.back();
			}
 		</script>
		
		';
		exit();
	}
	
	else
	{
		//On séléctionne dans la bdd ou le pass du formulair est égal à celui de la bdd
		$sql = "SELECT pass and login from admin where pass='$pass' and login='$login'";
		$req = mysql_query($sql);

		//On compte le nombre de résultats
		$nombre = mysql_num_rows($req);

		//Si le résultat est différent de 1
		if($nombre!="1")
		{
			//On affiche un message d'erreur
			echo'Mauvais nom d\'utilisateur/mot de passe
				<form name="formulaire">
  				<input type="button" value="retour" onclick="retour()" />
				</form>
				<script type="text/javascript">
				function retour()
				{
					history.back();
				}
 			 	</script>
			';
			return;
			exit();
		}
		else
		{
			//Sinon on affiche la page avec le menu et on définie la variable de session

			$_SESSION['login'] = $login;
			$_SESSION['pass'] = $pass;

	
		
			echo"<link rel=\"stylesheet\" href=\"style.css\"><div align=\"center\"><a href=\"insert.php\">Insérer une news</a><br /><br /><a href=\"admin_ajouter.php\">Ajouter un Admin</a><br /><br /><a href=\"admin_gestion.php\">Gestion des Admins</a><br /><br /><a href=\"../index.php\">Retour au site</a></div>";
		}
	}
}

//Si on a pas encore cliqué sur OK on affiche le formulaire
else
	{	


?>


<link rel="stylesheet" href="style.css" />
<form action="<?php=$PHP_SELF?>" method="POST">
<table align="center" border="0">
<tr><td class="tds" align="center">Nom d'utilisateur</td>
        <tr><td class="tds" align="center"><input type="text" name="login" maxlength="50" size="10"></tr></td>
</tr>
<tr>
        <td class="tds" align="center">Mot de passe</td>
        <tr><td class="tds" align="center"><input type="password" name="pass" maxlength="8" size="5"></td></tr>
</tr>
</table><br />
<center><input type="submit" name="OK" value="OK"></center>
</form>

<?php } ?>

 Conclusion

Vous pouvez voir le résultat ici: http://www.pcroxor.fr.st :)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

09 novembre 2004 20:27:37 :
J'ai mis à jour pour la coloration. j'ai mis <? au lieu de <?php
09 novembre 2004 20:31:18 :
pfou le fichier zip.... vive les nexbies
13 novembre 2004 19:15:28 :
13 novembre 2004 19:19:44 :
Verification de login ajoutée

 Sources de la même categorie

CALCUL D'UNE DISTANCE ORTHONORMIQUE par bossfoot
Source avec Zip ESPACE ADMIN SIMPLE par mousaid_88
Source avec Zip IMAGINE-CMS V2.20 par djack69
Source avec Zip AFFICHAGE ET GESTION DE DIAPORAMA EN PHP SANS BASE DE DONNÉE... par mldvb
Source avec Zip Source avec une capture PARSER ALLOCINE par cyrhades

Commentaires et avis

Commentaire de DrK_Worm le 09/11/2004 16:32:22

Premier post, premiere version, la couleur du code en haut a un peu foirée non ?

Commentaire de Anthomicro le 09/11/2004 18:45:38

Salut :-)

<? : à bannir, <?php est portable sur toutes les configurations.

Même chose pour <?=$PHP_SELF?>, beurk...

a ++

Commentaire de coucou747 le 11/11/2004 12:02:41

je sais que tu prends soin a chaque fois de le rapeler, mais c'est vrai que plus on fait de choses portables, mieux ce sera pour l'ensemble de la programmation, mais il faut bien avouer que ce qui doit être portable c'est le coté client, le serveur, en général, on s'en moque... Mai je me bats pour la portabilitée sur le forum javascript et C/C++ mais pas vraiment ici, t'as raison de le souligner, mais tu ne seras pas suivit tout de suite, déja que moi j'ai du mal a être suivit quand je dis çq sur les autres forums, sur un forum serveur t'as pas finit... Moi, je fais souvent des trucs portables, toujours en javascript en C pas toujours, mais souvent, mais alors en php jamais, j'utilises régulièrement les fonctions system pour créer un fichier ect... C'est sur, c'est pas bien, mais c'est tellement plus rapide (cat pour cacatener deux fichiers... ect...) enfin voila mes script ont étés difusés ici, mais si qqn les teste sous windows il va être surpris... Faut tout faire en portable, mais faut commencer par les clients... les aplis serveur comme le php, c'ets le rendu qui compte (vitesse ect...) le reste on s'en moque un peu...

Commentaire de Anthomicro le 11/11/2004 16:21:55

"c'ets le rendu qui compte (vitesse ect...) le reste on s'en moque un peu..."

Change d'hébergeur un jour et tu comprendras :-)

a ++

Commentaire de coucou747 le 11/11/2004 17:00:44

... je suis hébergé par moi même... c'ets sur que quand on change ça doit faire tout drole...

Commentaire de Anthomicro le 11/11/2004 17:04:57

C'est clair, surtout pour un site visité, encore le mec qu'à un site perso admettons, sur les photos de son chien bon bah il peut se permettre une indisponibilité le temps de tout recoder, mais quand le site est un minimum visité...

Et puis optimisation et portabilité ce n'est pas tout le temps incompatible.

Par exemple le <? et le <?php ne ralentit pas l'exécution du script.

a ++

Commentaire de coucou747 le 11/11/2004 17:39:20

je n'ai jamais dis que c'était toujours incompatible, j'ai même dit que c'était mieux quand un prog était portable. Je suis en effet d'accord avec toi. Je dis juste que tu exagères car un petit <? c'est pas bien compliqué à changer...

Commentaire de cseagle le 11/11/2004 17:55:35

Salut,

J'ai pas tout regardé mais la en register global à off je pense que ca va coincer :

//On définie les variables de formulaire
    $login = $_POST['login'];
    $pass = $_POST['pass'];

Tu devrais tester directement sur $_POST['login'] et $_POST['pass'] et definir $login et $pass après la condition validée.

Commentaire de Anthomicro le 11/11/2004 17:58:15

"un petit <? c'est pas bien compliqué à changer"...

Le problème est qu'après tu commences comme ça et quand t'as 100 pages à modifier ça prend quand même du temps, surtout si t'as la bonne (sic) idée de mélanger php + html, ce qui fait que tu cherches les balises <? dans tes fichiers...

Bonjour la galère...

Commentaire de DrK_Worm le 11/11/2004 19:42:00

Sinon quelqu'un peut m'aider pour la verification si le visiteur est loggé ? Essayez chez vous mais chez moi ca ne marche pas...

Commentaire de cseagle le 11/11/2004 21:38:53

Alors allons y :

1) Tout d'abord comme te l'a dit Anthomicro, tu ouvres toutes tes balises avec <?php

2) Pourquoi nul part j'ai vu d'entêtes HTML ça me parait bizarre....

3) Les accents que tu passes dans tes echo, utilise les codes html (exemple : é devient &eacute; )

4) Pour ta page verif.php

if(!isset($_SESSION['login']) && !isset($_SESSION['pass']))
{
echo"Veuillez vous identifier";
include('login.php');
exit();
}

Et tu l'inclus au début de tes pages avec juste avant session_start();

5) Dans afficher.php met des {} dans le premier if

Voila ce que j'ai vu et mes conseils de jeune débutant ;-)

Commentaire de DrK_Worm le 13/11/2004 18:21:12

Je n'ai pas mis d'entetes html comme <html>,<body> etc... pour vous permettre d'utiliser les pseudos-frames (je les utilise moi meme) et ne pas avoir plusieurs erreurs a cause de plusieurs <body> dans le texte par ex.

Je vais essayer ce que tu m'a dis au sujet de verif.php et je remettrai à jour ce script ;-)

Commentaire de Marshall_Mathers le 21/07/2005 21:47:23

J'ai trouvé quelques erreurs mais je trouve le code correct !

Bravo...

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,796 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales