Bonsoir je suis débutant en php, je cherche une solution pour un code. En fait je doit envoyer un code de confirmation a un utilisateur sue son numéro de téléphone que je doit récupérer dans une base de donnée voici ce que j'ai commencer a faire
voici l'erreur : Notice: Array to string conversion in /opt/lampp/htdocs/SVA/inscription.php on line 69
<?php
include "APISMS-master/Messages/SMSApi.php";
if(!empty($_POST['nom']))
{
try
{
$bdd = new PDO('mysql:host=localhost;dbname=Inscription;charset=utf8', 'root', '');
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
// Je mets aussi certaines sécurités ici…
$passe = htmlspecialchars($_POST['passe']);
$passe2 = htmlspecialchars($_POST['passe2']);
if($passe == $passe2 AND isset($_POST['connecter']))
{
$code = rand(0,9999);
// Je vais crypter le mot de passe
$passe = sha1($passe);
$req = $bdd->prepare('INSERT INTO validation (nom, prenom, email, passe, telephone) VALUES(?, ?, ?, ?,?)');
$req->execute(array($_POST['nom'], $_POST['prenom'], $_POST['email'], '$passe',$_POST['number']));
$reponse = $bdd->query("SELECT telephone FROM validation ");
$number = $reponse->fetch();
//function sendSMS($number, $code){
//$config = [];
//$sms = new SMSApi($config);
$sms = new SMSApi();
$senderAddress = "tel:+221770000000";
$sms->sendSMS(
$senderAddress,
"tel:+221".$number,
$code,
"TESTSMS");
$sms->getSMSBalance();
}
else
{
echo 'Les deux mots de passe que vous avez rentrés ne correspondent pas…';
}
}
?>
- Edité par moustaphambaye4 22 mai 2019 à 21:35:04
Pour commencer, si tu inclues le fichier SMSApi.php, il est inutile d'utiliser use.
Ensuite, ta requête de sélection dans la table validation, tu ne fais que récupérer le premier enregistrement de la table et franchement, je ne vois pas l'intérêt de sauvegarder des données dans une table, si elle ne doit contenir qu'un seul enregistrement.
Pour terminer, et donc, qu'attends-tu comme aide ?
Tu ne donnes aucun message d'erreur et tu n'expliques même pas quel est ton problème.
Sinon, ta variable $number, ne contient pas directement la valeur attendu, il te faudrait donc plutôt faire :
D'ailleurs, pourquoi faire une seconde requête SQL, alors que tu as déjà le numéro de téléphone de l'utilisateur quand tu fais l'insertion en base de données.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.
Oui tu as sans doute raison @Latrtak en fait c'est juste pour un test mon problème se trouvait avec la variable $number comme tu l'a dit j' y avais pas mis la valeur attendu je le l'ai rectifie et sa l'air marcher
La seconde requête C'est pour tester si j'arrivai a récupérer un numéro de téléphone dans la base pour ensuit l'envoyer a utilisateur. Et une prochaine fois j’essayerais d’être plus clair. Et merci hun!
Envoie code de conffirmation
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.