Systeme Formulaire et categorie

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Systeme Formulaire et categorie

Re: Systeme Formulaire et categorie

par dextouxe » 17 juil. 2012, 13:51

j'ai fait une erreur dans le code que j'ai remit, voici le bon code php:
<?PHP include('../inc/header.php'); ?>
<?PHP include('../inc/menuLeft.php'); ?>
<?PHP include('../config.php'); ?>
						<div id="texte"><div id="overflow">
							<div class="cadre"><div class="titre">Videos:</div><div class="marge_interne">

<style type="text/css">
form
{
text-align:center;
}
</style>

<body>

<?php
if (isset($_POST['pseudo']) && isset($_POST['lien']) && isset($_POST['categorie']) && isset($_POST['id']))
{
if ($_POST['pseudo'] != NULL && $_POST['lien'] != NULL && $_POST['categorie'] != NULL && $_POST['id'] != NULL)
{
// Connexion à MySQL
mysql_connect("$serveurs", "$serveurlogin", "$serveurpass");
mysql_select_db("$dbother");

// Sécurité injections HTML
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$lien = mysql_real_escape_string(htmlspecialchars($_POST['lien']));
$categorie = mysql_real_escape_string(htmlspecialchars($_POST['categorie']));
$id = mysql_real_escape_string(htmlspecialchars($_POST['id']));

// Enregistrement du message
mysql_query("INSERT INTO videos VALUES('$pseudo', '$lien', '$categorie', '$id')") or die(mysql_error());

// Déconnection de MySQL
mysql_close();

}
}

?>



<form action="videos.php" method="post">

<p>

Pseudo : <input type="text" name="pseudo" /><br />
Lien : <input type="text" name="lien" /><br />
Categorie :
<label>
	  <select name="categorie">
	    <option value="Terrain">Terrain</option>
	    <option value="Equipement">Equipement</option>
	    <option value="Parties">Parties</option>
	    <option value="Autres">Aures</option>
		</label>
</p>
<br>

<input type="submit" value="Envoyer" />
</p>

</form>

<?PHP include('../inc/footer.php'); ?>

Re: Systeme Formulaire et categorie

par Dextouxe » 17 juil. 2012, 13:49

voila ne nouveau code PHP:
<?PHP include('../inc/header.php'); ?>
<?PHP include('../inc/menuLeft.php'); ?>
<?PHP include('../config.php'); ?>
						<div id="texte"><div id="overflow">
							<div class="cadre"><div class="titre">Videos:</div><div class="marge_interne">

<style type="text/css">
form
{
text-align:center;
}
</style>

<body>

<?php
if (isset($_POST['pseudo']) && isset($_POST['lien']) && isset($_POST['categorie']) && isset($_POST['id']))
{
if ($_POST['pseudo'] != NULL && $_POST['lien'] != NULL && $_POST['categorie'] != NULL && $_POST['id'] != NULL)
{
// Connexion à MySQL
mysql_connect("$serveurs", "$serveurlogin", "$serveurpass");
mysql_select_db("$dbother");

// Sécurité injections HTML
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$lien = mysql_real_escape_string(htmlspecialchars($_POST['lien']));
$categorie= mysql_real_escape_string(htmlspecialchars($_POST['categorie']));
$categorie= mysql_real_escape_string(htmlspecialchars($_POST['id']));

// Enregistrement du message
mysql_query("INSERT INTO videos VALUES('', '$pseudo', '$lien', '$categorie', '$id')") or die(mysql_error());

// Déconnection de MySQL
mysql_close();

}
}

?>



<form action="videos.php" method="post">

<p>

Pseudo : <input type="text" name="pseudo" /><br />
Lien : <input type="text" name="lien" /><br />
Categorie :
<label>
	  <select name="categorie">
	    <option value="Terrain">Terrain</option>
	    <option value="Equipement">Equipement</option>
	    <option value="Parties">Parties</option>
	    <option value="Autres">Aures</option>
		</label>
</p>
<br>

<input type="submit" value="Envoyer" />
</p>

</form>

<?PHP include('../inc/footer.php'); ?>

et le sql j'ai essayé autre choses
/*
Navicat MySQL Data Transfer

Source Server         : site
Source Server Version : 50524
Source Host           : localhost:3306
Source Database       : site

Target Server Type    : MYSQL
Target Server Version : 50524
File Encoding         : 65001

Date: 2012-07-16 22:51:56
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `videos`
-- ----------------------------
DROP TABLE IF EXISTS `videos`;
CREATE TABLE `videos` (
  `pseudo` text NOT NULL,
  `lien` text,
  `categorie` text NOT NULL,
  `id` int(5) NOT NULL AUTO_INCREMENT,
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=28 DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records of videos
-- ----------------------------

Re: Systeme Formulaire et categorie

par xTG » 17 juil. 2012, 13:34

Si aucune insertion tu as forcement une erreur SQL générée. Regardes donc les logs ou bien dans le code HTML généré au cas où il se cache.

Re: Systeme Formulaire et categorie

par Dextouxe » 17 juil. 2012, 13:19

ne marche pas, si j'enleve la catégorie ça marche mais je veux que les videos soit dans des categorie differente du genre Loisire, TV etc

Re: Systeme Formulaire et categorie

par xTG » 17 juil. 2012, 08:43

Actives les erreurs PHP, ou au moins va regarder le fichier de logs. ;)
$id dans la requête sort de nulle part par exemple.
Ensuite remplaces les "AND" par "&&".
Car "AND" n'est pas vraiment l'opérateur recherché ici, il est équivalent à "&".

Re: Systeme Formulaire et categorie

par Nicolai » 16 juil. 2012, 22:43

je suis dans le meme cas que toi, pour un systeme de categorie.

Systeme Formulaire et categorie

par Dextouxe » 16 juil. 2012, 22:27

Voila, je developpe un site avec un ajout de videos qui a 4 categories en tout.

voici le code:
<?PHP include('../inc/header.php'); ?>
<?PHP include('../inc/menuLeft.php'); ?>
						<div id="texte"><div id="overflow">
							<div class="cadre"><div class="titre">Videos:</div><div class="marge_interne">

<style type="text/css">
form
{
text-align:center;
}
</style>

<body>

<?php
if (isset($_POST['pseudo']) AND isset($_POST['lien']) AND isset($_POST['categorie']))
{
if ($_POST['pseudo'] != NULL AND $_POST['lien'] != NULL AND $_POST['categorie'] != NULL)
{
// Connexion à MySQL
mysql_connect("localhost", "root", "");
mysql_select_db("site");

// Sécurité injections HTML
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$lien = mysql_real_escape_string(htmlspecialchars($_POST['lien']));
$categorie= mysql_real_escape_string(htmlspecialchars($_POST['categorie']));

// Enregistrement du message
mysql_query("INSERT INTO videos VALUES('$pseudo', '$lien', '$categorie', '$id')") or die(mysql_error());

// Déconnection de MySQL
mysql_close();

}
}

?>



<form action="videos.php" method="post">

<p>

Pseudo : <input type="text" name="pseudo" /><br />
Lien : <input type="text" name="lien" /><br />
Categorie :
<label>
	  <select name="categorie">
	    <option value="1">1</option>
	    <option value="2">2</option>
	    <option value="3">3</option>
	    <option value="4">4</option>
		</label>
</p>
<br>

<input type="submit" value="Envoyer" />
</p>

</form>

<?PHP include('../inc/footer.php'); ?>

Il y a tout pour categorie, et les sql sont comme ceci:
/*
Navicat MySQL Data Transfer

Source Server         : site
Source Server Version : 50524
Source Host           : localhost:3306
Source Database       : site

Target Server Type    : MYSQL
Target Server Version : 50524
File Encoding         : 65001

Date: 2012-07-16 22:09:39
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `videos`
-- ----------------------------
DROP TABLE IF EXISTS `videos`;
CREATE TABLE `videos` (
  `pseudo` text NOT NULL,
  `lien` text,
  `categorie` varchar(20) DEFAULT NULL,
  `id` int(5) NOT NULL AUTO_INCREMENT,
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records of videos
-- ----------------------------


Met une fois tout les champs remplie rien n'est ajouté a la BDD.


Cordialement Dextouxe