Connexion à une table MySql

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 : Connexion à une table MySql

Re: Connexion à une table MySql

par banania » 14 mai 2015, 19:27

ok merci je vais essayer

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 18:49

En PHP tu peux faire un print_r de $_POST pour vérifier son contenu.
Sur firefox, tu peux utiliser firebug pour voir les appels ajax dans la console et vérifier les paramètres transmis etc. Tu as le même genre d'outils sur tous les navigateurs.
En javascript tu peux faire un alert($('select[name="club"]').val()); pour vérifier la valeur retournée.

Je pense que tu as tous les éléments pour trouver d'où vient le problème.

Re: Connexion à une table MySql

par banania » 14 mai 2015, 18:47

EDIT
par contre, apres <select name="club">,
<option value=...
value n'est réutilisé nul part
c'est normal ou pas?

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 18:44

As-tu bien ajouté l'attribut name sur ton select ?

<select value="club"> ça n'existe pas.

Un select c'est :
<select name="club">
  <option value="club 1">Club 1</option>
  ...
</select>

Re: Connexion à une table MySql

par banania » 14 mai 2015, 18:39

ba du coup j'ai bien:
$.ajax({
  url: "serveur/ficheclub.php",
  type:"POST",
  data: { club: $('select[name="club"]').val() },
  success: function(data) {
    $("#ficheclub").php(data);
  }
});
sur la premiere page
et sur la seconde page :
$query = "SELECT * FROM ficheclub where nom=' ".$_POST['club']." ' ";
Mais ca ne marche pas :/

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 18:31

Tu mélanges javascript et php.
$_POST c'est le tableau php des variables transmises en post.
$('select[name="club"]').val() c'est du jquery permettant de récupérer la valeur de la liste déroulante <select name="club">.

Re: Connexion à une table MySql

par banania » 14 mai 2015, 18:24

je ne comprend pas... Il faut que je mette :
$_POST[' $('select[name="club"]').val() ']
?
(dans la page appelée?)

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 18:18

Si tu as un undefined index club, c'est qu'à priori tu n'as pas fait ce que je t'ai suggéré.

Avec ça :
$.ajax({
  url: "serveur/ficheclub.php",
  type:"POST",
  data: { club: 'toto' },
  success: function(data) {
    $("#ficheclub").php(data);
  }
});
$_POST['club'] doit être égal à toto.

Re: Connexion à une table MySql

par banania » 14 mai 2015, 18:12

bon j'ai changé ce que tu m'a proposé mais la meme erreur reste :
undefined index : club
j'ai changé le $_POST['name'] en $_POST['club'] sur la seconde page (il fallair bien le changer la??)
J'ai aussi mit l'attibut club du coup au select

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 18:03

Dans les exemples ici : http://api.jquery.com/jquery.ajax/
$.ajax({
  method: "POST",
  url: "some.php",
  data: { name: "John", location: "Boston" }
})
  .done(function( msg ) {
    alert( "Data Saved: " + msg );
  });
Donc dans ton cas ce serait plutôt :
$.ajax({
  url: "serveur/ficheclub.php",
  type:"POST",
  data: { club: $('select[name="club"]').val() },
  success: function(data) {
    $("#ficheclub").php(data);
  }
});
Et côté PHP tu peux utiliser $_POST['club'].

Attention par contre ton select n'a pas d'attribut name, il faut que tu l'ajoutes pour que ça fonctionne.

Tu peux aussi lui mettre un attribut id et utiliser la syntaxe suivante pour récupérer la valeur (en admettant que l'id soit égale à club bien sur) :
$('select#club').val()

Re: Connexion à une table MySql

par banania » 14 mai 2015, 17:50

// recuperation des clubs
$.ajax({
url: "serveur/ficheclub.php",
type:"POST",
data: '$_POST['club']=' + club,
success: function( data ) {
$( "#ficheclub" ).php( data );
}
});

Ah oui du coup il faudrait que je mette : ?
data: '$_POST['name']=' + name,

EDIT selection dans la liste deroulante:
<select value="club">

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 17:46

Le formulaire est-t-il bien soumis en post ? tu parles de jquery, la valeur de la liste déroulante est-elle bien envoyée dans ce code jquery ?

Re: Connexion à une table MySql

par banania » 14 mai 2015, 17:44

ah oui au temps pour moi j'avais changé quelque chose :
name a été remplacé pas value dans .$_POST['value'].
donc du coup :Undefined index: value

Re: Connexion à une table MySql

par Saian » 14 mai 2015, 17:38

Undefined index c'est quand tu essaies d'accéder à un index non défini d'un tableau.
On ne voit aucune tentative d'accès à un index name dans ton code.

Re: Connexion à une table MySql

par banania » 14 mai 2015, 17:33

Merci j'ai changé ca
Il ne me reste plus qu'une erreur :
Undefined index: name
name est une valeur que je poste grace a une menu déroulant sur une autre page
La page que vous avez comme code ci dessus est applée grace a la methode jquery
pouvez vous m'aider svp?