[Résolu] Requête Post via application C#

Quelque chose ne fonctionne pas alors qu'il vous semble que le soucis ne vient pas de vous ? Vous avez des questions sur nos services et vous pensez que vos préoccupation peuvent intéresser d'autres hébergés ? N'hésitez pas à nous contacter.
Philippe40
Messages : 32
Inscription : 21 octobre 2012 à 18:54

Bonjour,
J'ai un problème d'envoie de données vers ma base de données via un programme développé dans la plateforme Xamarin :
Erreur renvoyée par le serveur :

One or more errors occurred. (Unable to resolve host "pensebete.francesrv.fr": No address associated with hostname)

Mon programme exécute la requête PHP suivante :
-------------------------------------------------------------------------------------------

<?php

file_put_contents("log/".date("Ymd").".txt", var_export($_POST, true));
\t\t
$host='sql.franceserv.fr';
$user='xxxxx';
$pass='xxxxxxx'';
$base='philippe40_db3';
\t
try {\t\t
$dbh = new PDO('mysql:host='.$host.';dbname='.$base, $user, $pass);
\t\t\t\t
$sql = "INSERT INTO wp3_articles (code_article, generic_name,product_name)
\t VALUES ('$_POST[codearticle]','$_POST[genericname]','$_POST[productname]')";

if ($dbh->query($sql) === TRUE)
{ echo "New record created successfully";} \t\t
\t else {echo "Error: " . $sql . "<br>" . $dbh->error;}\t\t\t
}
catch (PDOException $error) {die("Erreur de connexion : " . $error->getMessage() );}\t\t\t
$dbh->close();
?>

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

La fonction c#

public static Task<bool> ExportLigneToServer(Article vh)
{
return Task.Run(() =>

{
using (var client = new HttpClient())
{
string Serveur ="http://pensebet.franceserv.fr";

client.BaseAddress = new Uri(Serveur);

client.DefaultRequestHeaders.Accept.Clear();

client.DefaultRequestHeaders.Accept.Add(new
MediaTypeWithQualityHeaderValue("application/json"));

try
{
var data = new Dictionary<string, string>
{
{ "codearticle", vh.CodeArticle.ToString() },
{ "genericname", vh.GenericName.ToString()},
{ "productname", vh.ProductName.ToString() }

};

var content = new FormUrlEncodedContent(data);
var response = client.PostAsync(Serveur, content);
var responseString = response.Result;

}
catch (Exception ex)
{
var c = ex;
}

return true;
}
});
}

Je dispose d'un environnement de test qui fonctionne parfaitement.
Merci de votre aide
Cordialement
Philippe
Philippe40
Messages : 32
Inscription : 21 octobre 2012 à 18:54

Ne cherchez pas j'ai trouvé le problème
Pour info
Celà provenait de mon programme
la ligne
string Serveur ="http://pensebete.franceserv.fr/insert.php"; était enregistré dans une variable :
string Serveur = Apache + insert.php
Apache contenant http://pensebete.franceserv.fr/
En remplaçant la variable par l'adresse complète, je n'ai plus de problème
Cordialement
Philippe
Répondre