Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

PHP MySQL


silverlink

Messages recommandés

Le code de base n'est pas a moi ,mais je l'ai prit sur une source php gratuite lol

 

Donc voila mon probleme ,grace a la page php ci dessous je fait apparaitre la table que je veux dans un tableau php;dans ce tableau apparait toutes mes colonnes avec leurs données.

A la fin de chaque ligne de ce tableau il y a une sorte de lien qui efface la ligne quand on clic dessus.

J'aimerais remplacé "del" par "add" ,je veux qu'au lieu d'éffacé la ligne ,celle ci s'ajoute (la ligne) dans une table panier.

(j'utilise deja une table pour faire apparaitre ces lignes)Mais je sais vraiment pas comment faire pour inséré une ligne de ces lignes dans une autre table

 

Merci d'avance

<?php
/* =========================== CONFIGURATION =========================== */

//titre (et sous-titre) de votre page et adresse e-mail de contact :
$titre			  = 'BOITIER';
$soustitre		  = '';
$email			  = '[email protected]';
//largeur de chaque colonne (une largeur de 10 fait 70 pixels) :
$largeurcolonnes	= 20;

//----------------------------------------------------
//paramètres de votre base de données mysql :
$mysql['server']	= 'localhost';
$mysql['login']	 = 'root';
$mysql['password']  = '';
$mysql['database']  = 'BBSi';
$mysql['table']	 = 'Composants';
$mysql['panier']	 = 'Panier';
//ATTENTION, votre table doit contenir une clé primaire en auto_increment 
//en premier champ de table (non affichée ensuite ici)

//----------------------------------------------------
//protégé par mot de passe (true/false) :
$pp				 = false;
//si true, alors indiquez le mot de passe :
$password		   = 'rondoudou';

/* ====================== FIN DE LA CONFIGURATION ====================== */


$self = $_SERVER['PHP_SELF'];

session_start();
$admin = false;
if(isset($_POST['pass']) && $_POST['pass']==$password)
$admin = true;
elseif(isset($_SESSION['pass']) && $_SESSION['pass']===true)
$admin = true;
$_SESSION['pass'] = $admin;

//error_reporting(E_ALL);

mysql_connect($mysql['server'],$mysql['login'],$mysql['password'])
or die('Erreur lors de la connexion à la base MySQL : '.mysql_error());

mysql_select_db($mysql['database'])
or die('Erreur lors du choix de la table MySQL : '.mysql_error());

$r = mysql_query('SELECT * FROM '.$mysql['table'])
 or die('Erreur lors de la lecture des données de la table : '.mysql_error());

$numfields = mysql_num_fields($r);

for($i=0;$i<$numfields;$i++)
$fields[] = mysql_field_name($r,$i);

if(isset($_POST[$fields[1]])){
if(!$pp || ($pp && $admin)){
	$q = "INSERT INTO ".$mysql['table']." (";
	for($i=1;$i<$numfields-1;$i++)
		$q.= $fields[$i].", ";
	$q.= $fields[$numfields-1].") VALUES (";
	for($i=1;$i<$numfields-1;$i++)
		$q.= "'".$_POST[$fields[$i]]."', ";
	$q.= "'".$_POST[$fields[$numfields-1]]."')";
	mysql_query($q) or die(mysql_error());
}
else
	exit("Erreur : vous n'avez pas les droits pour cette action.");
}

if(isset($_GET['delete'])){
if(!$pp || ($pp && $admin)){
	$req = 'DELETE FROM '.$mysql['table'].' WHERE '.$_GET['primary'].'='.$_GET['delete'];
	mysql_query($req) or die('['.$req.'] '.mysql_error());
}
else
	exit("Erreur : vous n'avez pas les droits pour cette action.");
}


//on refait la requête de sélection pour actualiser la page :
$r = mysql_query("SELECT * FROM ".$mysql['table']." ORDER BY ".$fields[0]." ASC")
 or die("Erreur lors de la lecture des données de la table : ".mysql_error());

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 <meta http-equiv="Content-Script-Type" content="text/javascript" />
 <meta http-equiv="Content-Style-Type" content="text/css" />
 <meta http-equiv="Content-Language" content="fr" />
 <!--meta http-equiv="Refresh" content="15" /-->
 <title><?php echo $titre; ?></title>
 <script type="text/javascript">
function post(){
  if(document.getElementById('1').value!='')
	document.getElementById('flist').submit();
}
 </script>
 <style type="text/css" media="screen,print">
a { text-decoration: none; color: white; }
a:hover { color: black; }
body {
font-family: Helvetica, sans-serif;
font-size: 12px;
background-color: #CCCCCC;
}
th { border-bottom: 1px solid #888; background-color: #3333FF; }
tr:hover { background-color: #999999; }
input:focus { border: 2px solid #888; }
td,th { height: 22px; }
th { width: <?php echo $largeurcolonnes*8; ?>px; }
#lb { position: absolute; bottom: 18px; left: 20px; font-size: 10px; }
#rb { position: absolute; bottom: 10px; right: 28px; }
 </style>
 <style type="text/css" media="print">
.noprint { display:none; }
 </style>
</head>
<body>
<table style="margin-left: auto; margin-right: auto;">
 <?php
 //titres des colonnes :
 echo '<tr>';
 for($i=1;$i<$numfields;$i++)
  echo '<th>'.$fields[$i].'</th>';
 echo '</tr>';

 //lignes de la table :
 while($l=mysql_fetch_array($r)){
  echo '<tr>';
  for($i=1;$i<$numfields;$i++)
	  echo '<td>'.$l[$i].'</td>';
  if(!$pp || ($pp && $admin))
	  echo '<td class="noprint"><a href="'.$self.'?primary='.$fields[0].'&delete='.$l[0].'" onclick="java script:post()">del</a></td>';
	  echo '<input type="submit" style="display:none" />';
  echo '</tr>';
 }

 //formulaire d'ajout d'une ligne :
 if(!$pp || ($pp && $admin)){
  echo '<form method="post" id="flist" action="'.$self.'">';
  echo '<tr class="noprint">';
  for($i=1;$i<$numfields;$i++)
	  echo '<td><input type="text" size="'.$largeurcolonnes.'" name="'.$fields[$i].'" id="'.$i.'" /></td>';
  echo '<td style="height: 60px">';
  echo '<a href="#" onclick="java script:post()">Add</a>';
  echo '<input type="submit" style="display:none" />';
  echo '</td></tr></form>';
  echo '</tr>';
 }
 ?>
</table>

<div id="lb" class="noprint"></a>.</div>
<?php
if(!$admin && $pp){
//attention pour xhtml, certains serveurs insèrent un input hidden pour le session_id, juste après le <form> :
echo '<form method="post" id="fadmin" action="'.$self.'">';
echo '<div id="rb" class="noprint"><p>';


echo '<input style="display:none" type="submit" />';
echo '</p></div></form>';
echo '<script type="text/javascript"> document.getElementById(\'pass\').focus(); </script>';
}
else
echo '<script type="text/javascript"> document.getElementById(\'1\').focus(); </script>';
?>

</body>
</html>

 

Voila base de donnée

- phpMyAdmin SQL Dump
-- version 2.6.1
-- [url=http://www.phpmyadmin.net]http://www.phpmyadmin.net[/url]
-- 
-- Serveur: localhost
-- Généré le : Mardi 14 Novembre 2006 à 14:35
-- Version du serveur: 4.1.9
-- Version de PHP: 4.3.10
-- 
-- Base de données: `bbsi`
-- 

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

-- 
-- Structure de la table `panier`
-- 

CREATE TABLE `panier` (
 `ID` int(10) unsigned NOT NULL auto_increment,
 `Nom` varchar(30) NOT NULL default '',
 `Marque` varchar(15) NOT NULL default '',
 `Categorie` varchar(20) NOT NULL default '',
 `Caracteristique` varchar(255) NOT NULL default '',
 `Disponibilite` text NOT NULL,
 `Promotion` text NOT NULL,
 `Destockage` text NOT NULL,
 `Prix` decimal(10,0) NOT NULL default '0',
 KEY `ID` (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=103;

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...