Soucie MySql

Fermé
Arthur.E - 5 janv. 2010 à 18:06
 Arthur .E - 7 janv. 2010 à 17:48
Bonjour,

Je ne voit pas comment appliquer la phrase :
" Pour installer ce script, vous devez importer le fichier "sources/mysql.txt" dans votre base de données MySQL. "

Le fichier mysql est :

CREATE TABLE commentaires (
id INT (10) not null AUTO_INCREMENT,
com INT (10) not null ,
nom VARCHAR (255) not null ,
email VARCHAR (255) null ,
message MEDIUMTEXT not null ,
date DATE not null ,
heure TIME not null ,
PRIMARY KEY (id),
INDEX (id),
UNIQUE (id)
)


Amicalement ;)

59 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
6 janv. 2010 à 20:59
cette erreur concerne en fait la ligne de la requette à laquelle mysql_fetch... fait référence

donc regardes de plus près ta ligne qui fait la requette mysql_query....
0
$res=mysql_query($sql, $db) or die ("requete invalide verif ip");
Peut tu m'expliquez en meme temp ce qui va pas ? ^^
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
6 janv. 2010 à 21:14
$res=mysql_query($sql, $db) or die ("requete invalide verif ip");

remplace par une trace plus explicite:

$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
0
hé hop d'une nouvelle erreure ... Piouf ! ^^
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/a4272063/public_html/visite/visite.php on line 25
requete invalide: delete from compteur_visite where ip!='compteur'
Erreur: Table 'a4272063_base.compteur_visite' doesn't exist


Ma page visite.php

<?
include("connect_visite.php") ;

//on recupere l adresse ip du visiteur
if($_SERVER) 	{
  			if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
      				$adress = $_SERVER['HTTP_X_FORWARDED_FOR'];
    			elseif(isset($_SERVER['HTTP_CLIENT_IP']))
      				$adress = $_SERVER['HTTP_CLIENT_IP'];
    			else
      				$adress = $_SERVER['REMOTE_ADDR'];
  		}
 else 		{
    			if(getenv('HTTP_X_FORWARDED_FOR'))
      				$adress = getenv('HTTP_X_FORWARDED_FOR');
    			elseif(getenv('HTTP_CLIENT_IP'))
      				$adress = getenv('HTTP_CLIENT_IP');
    			else
      				$adress = getenv('REMOTE_ADDR');
  		}

//on verifie si on a pas changé de jour et on recupere le chiffre du compteur
$sql="select * from compteur_visite where ip='compteur'";
$res=mysql_query($sql, $db);
$ligne = mysql_fetch_object ($res);
$date = date("Y-m-d");

//on convertit l heure courante en minute d une journee
$time=(date("H") * 60) + date("i");

//on recupere le compteur courant et le temps t
$compteur=$ligne->compteur;
$t=$ligne->time; //temps de connexion de reference
$d=$ligne->duree; //duree de renouvellement de reference

//on test si on a changé de jour
if ($date!="$ligne->date")
{
	//on vide toutes les addresses ip enregistrées dans la table lors du changement de jour
	$sql="delete from compteur_visite where ip!='compteur'";
	$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
	
	//on met a jour la nouvelle date dans la table
	$sql="update compteur_visite set date='$date'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); }

//on verifie l adresse ip du visiteur et aussi son heure de passage
$sql="select * from compteur_visite where ip='$adress'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
$ligne = mysql_fetch_object ($res);
$num_rows =mysql_numrows ($res);
if ($num_rows==0)
{
	//on enregistre l adresse ip si elle est inconnu et on incremente le compteur
	$sql="insert into compteur_visite (ip,time,duree) values ('$adress','$time','$time')";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
	$compteur+=1;
	$sql="update compteur_visite set compteur=$compteur where ip='compteur'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
}
else
{
	//si l'adresse ip est connu alors verifie si sa connexion precedente est superieur a la durée
	//de renouvellement et si son heure de passage precedente incremente ou pas les connectés
	$time1=$ligne->time; //on recupere l'heure de sa precedente connexion de notre connecté
	$duree1=$ligne->duree; //on recupere l'heure de sa precedente connexion de notre connecté
	
	// on verifie si sa derniere connexion ne date pas de plus que la duree de reference
	if ($d*60<($time - ($duree1)))
	{
		//si la duree de reference est depassé alors notre connecté est comptablisé 
		//comme nouvelle visite et on met a jour sa nouvelle heure de passage
		$sql="update compteur_visite set time=$time,duree=$time where ip='$adress'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
		
		//on cree une ligne fictive pour pouvoir le comptabilisé dans les connectés de jour
		$adress1=$adress.".".$compteur;
		$sql="insert into compteur_visite (ip,time,duree) values ('$adress1','$time','$time')";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
		
		//et on increment le compteur de visite
		$compteur+=1;
		$sql="update compteur_visite set compteur=$compteur where ip='compteur'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
	}
	else
	{
		//on met a jour son heure de passage si elle est superieure a t
		if ($time>(($time1)-$t))
		{
			$sql="update compteur_visite set time=$time where ip='$adress'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
		}
	}
}


//on compte le nb de connecté de la journée
$sql="select * from compteur_visite";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
$compteur_j=(mysql_numrows ($res))-1;

//on compte le nb de connecté
$time=$time-$t;
$sql="select * from compteur_visite where time>=$time and ip!='compteur'";
$res=mysql_query($sql, $db) or die ("requete invalide: ".$sql."<br> Erreur: ".mysql_error()); 
$compteur_c=mysql_numrows ($res);
mysql_free_result($res);
mysql_close();
?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
6 janv. 2010 à 21:56
Erreur: Table 'a4272063_base.compteur_visite' doesn't exist

ce qui veut dire que la table compteur_visite n'existe pas vérifies !
0
Quand je veux crée la table compteur_visite il me demande de mettre un numéro
si je met 2 par exemple sa me met
Field TypeDocumentation Length/Values1 Collation Attributes Null Default2 Extra


donc je sais pas quoi remplir ^^
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
6 janv. 2010 à 22:34
pourquoi veux tu en recreer une autre ?

verifies qu'elle est bien dans la bonne base: a4272063_base
0
Bah parcequ'elle est pas crée,
Donc j'ai crée une Table j'ai mi nimporte quoi et le message est :

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/a4272063/public_html/visite/visite.php on line 25
requete invalide: delete from compteur_visite where ip!='compteur'
Erreur: Unknown column 'ip' in 'where clause'
0
Quand je remplie tout ce qu'il faut ici :
https://www.000webhost.com/migrate?static=true

sa ne fait rien du tout =S
0
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 504
6 janv. 2010 à 22:42
Assures-toi que le serveur aie les droits en écriture dans le dossier ou sur le fichier "connect_visite.php".
0
J'ai mi tout le dossier en CHMOD 777, et sa ne change rien :(
0
Il charge un peu et revien a cette meme page
0
Hey ! ^^
J'ai trouver la table que l'instal.php est censé modifié ;)

"CREATE TABLE compteur_visite (
compteur double DEFAULT '0' NOT NULL,
date date DEFAULT '0000-00-00' NOT NULL,
time int(9) NOT NULL default '0',
duree int(9) NOT NULL default '0',
ip varchar(50) NOT NULL,
PRIMARY KEY (ip),
KEY compteur (compteur, date),
KEY ip (ip)
)
"

Mais la pour le coup c'est du chinois Japonais =D ^^
0
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 504
7 janv. 2010 à 07:00
À exécuter dans l'onglet 'SQL' de PhpMyAdmin ...
0
J'ai executer ce que j'ai trouvé sur un autre site web :

-- phpMyAdmin SQL Dump
-- version 2.11.4
-- https://www.phpmyadmin.net/
--
-- Host: localhost
-- Generation Time: Jan 07, 2010 at 03:20 AM
-- Server version: 5.0.81
-- PHP Version: 5.2.11

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Database: `a4272063_base`
--

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

--
-- Table structure for table `compteur_visite`
--

CREATE TABLE `compteur_visite` (
  `compteur` double NOT NULL default '0',
  `date` date NOT NULL default '0000-00-00',
  `time` int(9) NOT NULL default '0',
  `duree` int(9) NOT NULL default '0',
  `ip` varchar(50) collate latin1_general_ci NOT NULL default '',
  `id` int(11) NOT NULL default '0',
  `compteur_records` text collate latin1_general_ci NOT NULL,
  `compteur_records_date` text collate latin1_general_ci NOT NULL,
  `compteur_records2` text collate latin1_general_ci NOT NULL,
  `compteur_records_date2` text collate latin1_general_ci NOT NULL,
  PRIMARY KEY  (`ip`),
  KEY `compteur` (`compteur`,`date`),
  KEY `ip` (`ip`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

--
-- Dumping data for table `compteur_visite`
--

INSERT INTO `compteur_visite` VALUES(0, '0000-00-00', 198, 198, '91.88.230.13', 0, '', '', '', '');



Si j'insert ce que je t'es di precedement sa me dit :

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"CREATE TABLE compteur_visite (
compteur double DEFAULT '0' NOT NULL,
date dat' at line 1 
0
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 504 > Arthur .E
7 janv. 2010 à 17:11
Tu ne dois pas mettre les guillemets autour !
0
neodu50 Messages postés 388 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 18 mars 2010 3
7 janv. 2010 à 13:06
0
Avec la table que j'ai inséré on dirais que le script marche mais le nombre de visite reste à 1 et le nombre de connecté a 1 :(
0
Youp je descent ^^
0
J'ai bien tirer les guillemet
et rien a faire sa reste a :

Nb de visiteurs:1

Nb de visiteurs aujourd'hui:0

Nb de connectés:1



Piouf Perdu :(
0
Me revoicii, Désolé de mettre des post les un a la suite mais je cherche et défois je bloque quand je pense
avoir presque reussi ;)

voici les message d'erreur

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'a4272063_user'@'10.50.0.41' (using password: YES) in /home/a4272063/public_html/visite/connect_visite.php on line 6

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /home/a4272063/public_html/visite/connect_visite.php on line 7

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/a4272063/public_html/visite/visite.php on line 24

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/a4272063/public_html/visite/visite.php on line 25

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/a4272063/public_html/visite/visite.php on line 41
requete invalide: delete from compteur_visite where ip!='compteur'
Erreur: Access denied for user 'a4272063_user'@'10.50.0.41' (using password: YES)
0