8791 sujets

Développement web côté serveur, CMS

Bonjours, je vous expose mon problème:

J'ai créer un site internet de raccourcissement d'URL, mais, j'aimerais que pour chaque liens, l'utilisateur puisse voir le nombre de visite totale, du jour, et du mois. Je possède une base mysql etc... Mais je ne sais malheureusement pas par ou commencer et comment m'y prendre... Merci de votre aide ! PS: mon site: http//animals.22web.net/ (l'adresse n'est pas la bonne car mon domaine est en préparation.) MERCI !
Bonjour Twee,

je te communique le fichier SQL de la table qui contient le nombre d'accès :
-- phpMyAdmin SQL Dump
-- version 3.3.9
--  http://www.phpmyadmin.net
 
--
-- Serveur: localhost
-- Généré le : Ven 29 Juillet 2011 à 21:58
-- Version du serveur: 5.5.8
-- Version de PHP: 5.3.5

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Base de données: `ma_base_sql`
--

-- --------------------------------------------------------

--
-- Structure de la table `tab_access`
--

DROP TABLE IF EXISTS `tab_access`;
CREATE TABLE IF NOT EXISTS `tab_access` (
  `NBRE_ACCESS` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`NBRE_ACCESS`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Contenu de la table `tab_access`
--

INSERT INTO `tab_access` (`NBRE_ACCESS`) VALUES
(1);


Ainsi que le bout de code PHP dans la page HTML faisant un incrément et l'affichage:
<!doctype html>
<html>
<head>
<title>Nombre d'acc&egrave;s</title>
</head>

<body>

<? p h p
/*-----------------------------------------------------*/
/* Informations pour la connexion à la base de données */
/*-----------------------------------------------------*/

$nom_du_serveur ="localhost";
$nom_de_la_base ="ma_base_sql";
$nom_utilisateur ="root";
$passe ="";
 
/*----------------------*/
/* Connexion au Serveur */
/*----------------------*/

$link = mysql_connect("$nom_du_serveur","$nom_utilisateur","$passe") or die('Connexion au serveur impossible : ' . mysql_error());

/*--------------------------------*/
/* Connexion à la base de données */
/*--------------------------------*/

$db = mysql_select_db("$nom_de_la_base") or die("Connexion à la base de données impossible : " . mysql_error());

/*---------------------------*/
/* lecture du nombre d'accès */
/*---------------------------*/

$requete1 = "select NBRE_ACCESS from tab_access";

$sql = mysql_query($requete1) or die ("Erreur de requête 1 : " . mysql_error());

$row = mysql_fetch_row($sql);

$nbre_access = $row[0] + 1;

echo "<h1>Nombre d'accès : " . $nbre_access . "</h1>";

/*--------------------------------------*/
/* Insertion dans la table "tab_access" */
/*--------------------------------------*/

$requete2 = "UPDATE tab_access SET NBRE_ACCESS =' $nbre_access '";
$sql = mysql_query($requete2) or die ("Erreur de requête 2 : " . mysql_error());

/*-------------*/
/* Déconnexion */
/*-------------*/

mysql_close($link);
?>

</body>
</html>
Attention : j'ai mis des espaces dans le mot PHP afin que le script soit pris à l'affiche à l'écran.
Je suis prêt à t'aider si tu as des problèmes !
J'ai testé ce bout de code et cela fonctionne mais c'est basique ! Smiley smile

@+
Modifié par Artemus24 (30 Jul 2011 - 00:16)
Merci énormément Artemus24, je n'ai plus qu'à modifier tout ça avec mon serveur etc... MERCI ! Smiley smile (dire que je galerai depuis 2 semaines pour faire ce code !) Smiley cligne MERCIIII !!! Smiley lol PS: tu aura un petit merci dans la page "à propos" de mon site Smiley cligne .
Modifié par Twee (30 Jul 2011 - 11:08)
Bonjour à toutes et à tous,

non, je ne recherche pas la publicité. Merci quand même.

Attention, ce code est très basique. Si tu veux un complément de :

1) comment gérer indépendamment chaque page associé à un lien ?

2) remettre ton compteur à zéro automatiquement selon la périodicité que tu désires afficher ?

et bien, demande-le moi !

@+
Tout comptes faits, et sachant que mon navigateur ne veux pas m'afficher phpMyAdmin... Je suis dans l'obligation de... soit créer une nouvelle base de donnée mysql, soit oublier... Qu'est-ce-que je devrais ajouter dans ma table pour avoir le nombre de visite du lien ?
CREATE TABLE redirections (
  `code` int(30) NOT NULL auto_increment,
  baseurl varchar(1000) character set utf8 NOT NULL,
  ip varchar(15) character set utf8 NOT NULL,
  `time` int(11) NOT NULL,
  used int(11) NOT NULL,
  PRIMARY KEY  (`code`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

voilà mon code sql.
Bonjour Twee,

j'ai installé sur mon ordinateur WampServer 2.0 (la dernière version qui se trouve à cette adresse. J'ai eu cette après-midi un souci avec mon serveur. Comme toi, je n'avais plus accès à PhpMyAdmin. J'ai identifié le problème et je l'ai solutionnée. Mais comme j'avais pas mal bidouillé dans MySql.ini et dans httpd.conf. Donc j'ai préféré tout réinstallé pour que mon environnement soit plus propre.

Donc voici les opérations à faire :

1) tu sauvegardes le ou les répertoire(s) qui se trouve dans c:\wamp\www, c'est à dire ceux de ton ou tes sites.

2) tu désinstalles wampserver en cliquant sur c:\wamp\unins000.exe

3) tu vérifies sur ton ordinateur que tu n'as plus de traces de wampserver.

4) j'ai fait du nettoyage dans la base des registres en supprimant toutes les références à wampserver.

5) puis je l'ai réinstallé et j'ai remis mes répertoires dans c:\wamp\www

Cela devrait normalement fonctionner à nouveau !

Sinon, as-tu consulté les log ?
--> c:\wamp\logs\apache_error.log
--> c:\wamp\logs\mysql.log

Pour répondre à ta question, il faut bien une table à part, car le compteur est propre à une page HTML. J'ai poussé un peu plus loin, cette après-midi pour créer une gestion du nombre d'accès associé à chaque page avec remise automatique selon le type de périodicité. Est-ce que cela t'intéresse ?

@+
Modifié par Artemus24 (30 Jul 2011 - 21:28)