[RESOLU] Requête de séléction mysqli

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 : [RESOLU] Requête de séléction mysqli

Re: Requête de séléction mysqli

par Mysve » 07 févr. 2021, 12:49

Merci,
A+

Re: Requête de séléction mysqli

par two3d » 07 févr. 2021, 10:10

j'ai pas trouvé d'article sur les accolades en php

Re: Requête de séléction mysqli

par @rthur » 07 févr. 2021, 09:53

Petit rappel sur la concaténation des variables en PHP :
http://www.phpdebutant.org/article55.php

Re: Requête de séléction mysqli

par two3d » 07 févr. 2021, 09:14

La concaténation avec accolades "{}" fonctionne qu'avec les guillemets doubles à mon avis.

Re: Requête de séléction mysqli

par Mysve » 07 févr. 2021, 01:02

D'accord, je vais modifier ça, sais tu comment faire pour que ceci ne soit pas en erreur {
"message": "syntax error, unexpected '')'' (T_CONSTANT_ENCAPSED_STRING), expecting ')'",
$reponse = $bdd->query('SELECT * FROM web_pages WHERE company_token = (SELECT token FROM pro_users WHERE id ='{$_SESSION["id"]}')');
Merci par avance

Re: Requête de séléction mysqli

par two3d » 06 févr. 2021, 22:42

Utilise assoc plutôt que array (mysqli_assoc()), regarde la doc si tu veux des infos mais utiliser assoc plutôt qu'array demande moins de ressource.

Re: Requête de séléction mysqli

par Mysve » 06 févr. 2021, 18:54

Merci,
<?php
$conn = new mysqli("", "", '', "");
if ($conn->connect_errno) {
    echo "Echec lors de la connexion à MySQL : (" . $conn->connect_errno . ") " . $conn->connect_error;
}
echo $conn->host_info . "\n";

// On créé la requête
$req = "SELECT token FROM pro_users WHERE id = {$_SESSION['id']}";
 
// on envoie la requête
$res = $conn->prepare($req);
 
var_dump($req);
?>

Le contenu de req est quandhe le print "SELECT et tout" alors que je veux le resultat
comment faire ?

Re: Requête de séléction mysqli

par @rthur » 06 févr. 2021, 16:07

Quel est le message d'erreur ?
Si c'est toujours le même vérifie à nouveau la ligne où ça se passe que tu n'as pas une faute de frappe (genre "conn" écrit en double)

Re: Requête de séléction mysqli

par Mysve » 06 févr. 2021, 14:49

Autant pour moi,
je ne l'avais pas mis dans le code que j'ai envoyé,
la connexion se fait bien parce que j'ai connect to db bla bla via TCP
<?php
$conn = new mysqli("", "", '', "");
if ($conn->connect_errno) {
    echo "Echec lors de la connexion à MySQL : (" . $conn->connect_errno . ") " . $conn->connect_error;
}
echo $conn->host_info . "\n";

// On créé la requête
$req = "SELECT token FROM pro_users WHERE id = {$_SESSION['id']}";
 
// on envoie la requête
$res = $conn->conn->prepare($req);
 
// on va scanner tous les tuples un par un
echo "<table>";
while ($data = mysqli_fetch_array($res)) {
    // on affiche les résultats
    echo "<tr><td>".$data['id']."</td><td>".$data['texte']."</td></tr>";
}
echo "</table>";
?>
D'ou vient le probleme dans ce cas la
Merci par avance

Re: Requête de séléction mysqli

par @rthur » 05 févr. 2021, 19:11

Tu fais appel à une variable $conn qui n'est définie nulle part dans ton script.

Re: Requête de séléction mysqli

par Mysve » 05 févr. 2021, 16:32

C'est à dire ? je n'ai pas bien compris or I

Re: Requête de séléction mysqli

par or 1 » 05 févr. 2021, 15:07

"Call to a member function prepare() on null"
autrement dit $conn ne vaut pas à cet endroit ce qui est nécessaire.

Requête de séléction mysqli

par Mysve » 05 févr. 2021, 13:30

Salut,
J'essaie de faire en sorte que $_SESSION["token"] vienne de pro£_users et qu'il corresponde ) l'id qui lui même correspond à la session id ( j'éspère que vous avez pas mal à la tête)
Bref, j'ai trouvé un code que j'ai bidoullié
<?php
// On créé la requête
$req = "SELECT token FROM pro_users WHERE id = {$_SESSION['id']}";
 
// on envoie la requête
$res = $conn->prepare($req);
 
// on va scanner tous les tuples un par un
echo "<table>";
while ($data = mysqli_fetch_array($res)) {
    // on affiche les résultats
    echo "<tr><td>".$data['id']."</td><td>".$data['texte']."</td></tr>";
}
echo "</table>";
?>
Et j'ai une erreur qui apparaît, Call to a member function prepare() on null

Le token est une suite de lettres et chiffre et de signes varchar de ce type : TvC49RGdQbKHvc+45S1p8smzNbcTVyh+3xTJN

Merci par avance