Demande de test de script

cirtey Messages postés 30 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 8 mai 2009 - 12 juin 2007 à 12:13
cirtey Messages postés 30 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 8 mai 2009 - 12 juin 2007 à 12:50
Bonjour à tous;
J'ai fait un petit système pour ajouter ou enlever des données d'une base mysql.
L'utilisateur commence par entrer par la page accueil.htm puis choisit d'afficher ce qu'il y a dans la base puis de supprimer ou ajouter des données.
Tous les scripts présentent 0 erreur dans le débuggeur de Zend.
Mais seul le script d'affichage marche lors des tests.
Les scripts d'ajout et de suppression renvoient vers des blank et lorsque je vérifie dans php myadmin si les données sont rajoutées ou supprimées, je vois que l'exécution des scripts n'a rien donné. J'ai eu ce même problème pour d'autres scripts postés dans ce forum (authentification).
Par ailleurs je n'arrive pas à retourner à la page d'accueil avec le lien lorsque j'appuie dessus.
J'utilise wamp 1.7.1 dont apache et mysql sont fonctionnels, j'utilise zend studio 5.5 en mode débugger interne et le navigateur de test est firefox 2.
Le dossier qui contient les scripts est dans le répertoire www de wamp.
Le but de ce message est de voir si qq1 peut faire un test du programme chez lui pour voir si cela marche et par conséquent vérifier que le problème ne provient pas de mon code mais d'ailleurs.
Pour ceux qui peuvent faire le test, merci beaucoup d'avance.
Voici les codes:

D'abord la table table_dessin de la base base_dessin à copier coller dans phpmyadmin.
-- phpMyAdmin SQL Dump
-- version 2.10.1
-- http://www.phpmyadmin.net
-- 
-- Serveur: localhost
-- Généré le : Lun 11 Juin 2007 à 14:09
-- Version du serveur: 5.0.37
-- Version de PHP: 5.2.2

SET SQL_MODE= "NO_AUTO_VALUE_ON_ZERO";

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

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

-- 
-- Structure de la table `table_dessin`
-- 

CREATE TABLE `table_dessin` (
  `id_dessin` int(11) unsigned NOT NULL auto_increment,
  `titre` varchar(100) NOT NULL,
  `auteur` varchar(100) NOT NULL,
  `editeur` varchar(100) NOT NULL,
  `collection` varchar(50) NOT NULL,
  PRIMARY KEY  (`id_dessin`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

-- 
-- Contenu de la table `table_dessin`
-- 

INSERT INTO `table_dessin` (`id_dessin`, `titre`, `auteur`, `editeur`, `collection`) VALUES 
(1, 'pays_qa', 'van_hamme', 'lombard', 'thorgal');



Index.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

 Bienvenue dans votre espace de gestion des b.d. 

&amp;nbsp;

      ----

      Vous voulez voir le contenu de la base? ,
              <form id ="form1" name= "form1" method="post" action="afficher.php">
          <label>
            
            </label>
        </form>
       ,
   
    ----

      Vous voulez ajouter de nouvelles bandes dessinées?,
              <form id="form2" name="form2" method="post" action="ajouter.php">
          <label>
            
            </label>
        </form>
       
     ,
   
    ----

      Vous voulez supprimer des bandes dessinées de votre base?,
              <form id="form3" name="form3" method="post" action="supprimer.php">
          <label>
            
            </label>
        </form>
       ,
   
 

&amp;nbsp;

&amp;nbsp;

</html>


Afficher.php

<html>

<?php
// Définir paramètres
$host="localhost"; // Nom de l'hôte
$username="root"; // Utilisateur, ici root pour que vous puissiez faire des tests
$password=""; // Mot de passe vide pour que vous puissiez faire des testes
$db_name="base_dessin"; // Nom de base de donnée
$tbl_name="table_dessin"; // Nom de table

// Connecter au serveur
$link = mysql_connect("$host", "$username", "$password");
if (!$link) 
{
    die("Connexion impossible : " . mysql_error());
}
mysql_select_db("$db_name")or die("Ne peut pas selectionner la base");

// Selectionner
$sql="SELECT * FROM $tbl_name ORDER BY titre";
$result=mysql_query($sql);
if(!$result)
{
    echo "Lecture impossible";
}
else
{
    $nbcol=mysql_num_fields($result);
    $nbart=mysql_num_rows($result);
    echo " Tous nos B.D par titre
";
    echo " Il y a $nbart B.D
";
    echo "\";
    echo \" Id  | Titre | auteur | Editeur | Collection |\";
    while($ligne =mysql_fetch_array($result,MYSQL_NUM))
    {
    echo \"----
\";
    foreach($ligne as $valeur)
       {
           echo \"$valeur, \";
       }
        echo \"\";
    }
    echo "
";
}
// Fermer connexion
mysql_close($link);
?>
[index.htm Retour &amp;agrave; la page d'accueil.]

</html>


ajouter.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
<title>Saisissez vos coordonnées</title>
<meta http-equiv= "Content-Type" content="text/html; charset=ISO-8859-1">
</head>

<form action= "<?php echo $_SERVER['PHP_SELF'];?>" method="post"
enctype="application/x-www-form-urlencoded">
<fieldset>
<legend> Saisir les coordonnées de la BD </legend>
Titre :, ,
----
Auteur :, ,
----
Editeur :, ,
----
Collection :, ,
----

,

</fieldset>
</form>
<?php
// Définir paramètres
$host ="localhost"; // Nom de l'hôte
$username= "root"; // Utilisateur, ici root pour que vous puissiez faire des tests
$password=""; // Mot de passe vide pour que vous puissiez faire des testes
$db_name="base_dessin"; // Nom de base de donnée
$tbl_name="table_dessin"; // Nom de table

// Connecter au serveur
$link = mysql_connect("$host", "$username", "$password");
if (!$link) 
{
    die("Connexion impossible : " . mysql_error());
}
mysql_select_db("$db_name")or die("Ne peut pas selectionner la base de donnees");

if(!empty($_POST['titre'])&amp;&amp; !empty($_POST['auteur'])&amp;&amp; !empty($_POST['editeur'])&amp;&amp; !empty($_POST['collection']))
{
  $id_dessin="\N"; /*La valeur "\N" représente la valeur NULL de la variable $id_dessin.
  Elle permet d'incrémenter de 1 l'id_dessin à chaque nouvelle insertion.*/
  $titre=mysql_escape_string($_POST['titre']);
  $auteur=mysql_escape_string($_POST['auteur']);
  $editeur=mysql_escape_string($_POST['editeur']);
  $collection=mysql_escape_string($_POST['collection']);
  //Requète SQL d'insertion de données dans la table dessin
  $requete="INSERT INTO $tbl_name
  VALUES('$id_dessin','$titre','$auteur','$editeur','$collection')";
  $result=mysql_query($requete);
  
  if(!$result)
  {
    echo mysql_errno();
    echo mysql_error();
    echo "<script type="text/javascript">
    alert('Erreur : ".mysql_error()."')</script>";
  }
  else
  {
    echo "<script type="text/javascript">
    alert('Cette BD est enregistrée Son numéro est : ". mysql_insert_id()."')</script>";
  }
}
else 
{
    echo "Formulaire à compléter!
";
}
// Fermer connexion
mysql_close($link);
?>

[index.htm Retour &amp;agrave; la page d'accueil.] 

</html>


supprimer.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
<title>Saisissez vos coordonnées</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>

<form action= "<?php echo $_SERVER['PHP_SELF'];?>" method="post"
enctype="application/x-www-form-urlencoded">
<fieldset>
<legend> Saisir les coordonnées de la BD pour la supprimer </legend>
Id de la BD :, ,
----

,

</fieldset>
</form>
<?php
// Définir paramètres
$host ="localhost"; // Nom de l'hôte
$username="root"; // Utilisateur, ici root pour que vous puissiez faire des tests
$password=""; // Mot de passe vide pour que vous puissiez faire des testes
$db_name="base_dessin"; // Nom de base de donnée
$tbl_name="table_dessin"; // Nom de table

// Connecter au serveur
$link = mysql_connect("$host", "$username", "$password");
if (!$link) 
{
    die("Connexion impossible : " . mysql_error());
}
mysql_select_db("$db_name")or die("Ne peut pas selectionner la base de donnees");

if(!empty($_POST['id_dessin']))
{
  $id_dessin=mysql_escape_string($_POST['id_dessin']);
  //Requète SQL d'insertion de données dans la table dessin
  $requete="DELETE FROM $tbl_name WHERE id_dessin ='$id_dessin'";
  $result=mysql_query($requete);
  if(!$result)
  {
    echo mysql_errno();
    echo mysql_error();
    echo "<script type="text/javascript">
    alert('Erreur : ".mysql_error()."')</script>";
  }
  else
  {
    echo "<script type="text/javascript">
    alert('Cette BD est supprimée Son numéro était : ". mysql_insert_id()."')</script>";
  }
}
else 
{
    echo "Formulaire à compléter!
";
}
// Fermer connexion
mysql_close($link);
?>

[index.htm Retour &amp;agrave; la page d'accueil.] 

</html>

2 réponses

cirtey Messages postés 30 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 8 mai 2009
12 juin 2007 à 12:40
P.S: Lorsque je fais le test avec dreamweaver V9:
--> afficher.php : un tableau diforme avec des lignes de code dedans alors que ce même script marche parfaitement lors des tests sur zend studio
--> ajouter.php :
Fichier introuvable:
Firefox ne peut trouver le fichier à l'adresse /E:/Documents and Settings/sam/Mes documents/Unnamed Site 2/exo2_php_mysql/<?php echo $_SERVER['PHP_SELF']?>.
Lorsque je teste à partir de wamp/www:
Firefox ne peut trouver le fichier à l'adresse /E:/wamp/www/exo2_php_mysql/<?php echo $_SERVER['PHP_SELF']?>.
--> supprimer.php :
Fichier introuvable
Firefox ne peut trouver le fichier à l'adresse /E:/Documents and Settings/sam/Mes documents/Unnamed Site 2/exo2_php_mysql/<?php echo $_SERVER['PHP_SELF']?>.
Lorsque je teste à partir de wamp/www:
Firefox ne peut trouver le fichier à l'adresse /E:/wamp/www/exo2_php_mysql/<?php echo $_SERVER['PHP_SELF']?>.
Lorsque je teste à partir de wamp/www:
Firefox ne peut trouver le fichier à l'adresse /E:/wamp/www/exo2_php_mysql/<?php echo $_SERVER['PHP_SELF']?>.
--> les liens vers la page d'accueil et de la page d'accueil: marchent
0
cirtey Messages postés 30 Date d'inscription lundi 29 janvier 2007 Statut Membre Dernière intervention 8 mai 2009
12 juin 2007 à 12:50
Je pense que php_self ne marche pas en local.
0