Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ajouter un enregistrement

5 réponses
Avatar
Serafin
Bonjour,
Ca doit être tout bête, mais je n'y arrive pas, et ça commence à ménerver.
J'ai une appli php mysql qui gère mes videos, et que j'avais en local
jusqu'à présent. Consultation par mes pages php et gestion de la base
mysql par phpmyadmin. Un peu lourd, mais bon.

Je viens de rapatrier le tout sur un serveur (1&1). Mes pages php de
consultation fonctionne parfaitement. Par contre, pas moyen d'ajouter
des enregistrements. Si je fait un echo de ma requete et que je
l'exécute dans phpmyadmin, ça marche. Je précise que mon fichier
connexion.php fonctionne par ailleurs, que l'utilisateur utilisé à tous
les droits et qu'enfin je ne retourne aucun message d'erreur... mais pas
non plus d'enregistrement nouveau.

Si quelqu'un pouvait m'aider. D'avence merci.

Voici mon script:


include("connexion.php");
If (strlen($_REQUEST['prenom'])<1) {
$pren="NULL";
}
else{
$pren=$_REQUEST['prenom'];
}
If (strlen($_REQUEST['naissance'])<4) {
$nais="NULL";
}
else{
$nais=$_REQUEST['naissance'];
}
If (strlen($_REQUEST['deces'])<4) {
$dec="NULL";
}
else{
$dec=$_REQUEST['deces'];
}
If (strlen($_REQUEST['image'])<4) {
$ima="NULL";
}
else{
$ima=$_REQUEST['image'];
}
$resultat=ajouter_dans_base($_REQUEST['nom'],$pren,$nais,$dec,$ima);


function
ajouter_dans_base($lenom,$leprenom,$datenaissance,$datedeces,$image)
{
$sel="INSERT INTO acteur(nom_acteur, prenom_acteur, naissance_acteur,
deces_acteur, image1)

VALUES(\"$lenom\",\"$leprenom\",\"$datenaissance\",\"$datedeces\",\"$image\")";
$enr=mysql_query($sel,$connect);
if ($err==true){
return true;
}
else {
return mysql_error();
}
}

5 réponses

Avatar
Antoun
function
ajouter_dans_base($lenom,$leprenom,$datenaissance,$datedeces,$image)
{
$sel="INSERT INTO acteur(nom_acteur, prenom_acteur,
naissance_acteur, deces_acteur, image1)

VALUES("$lenom","$leprenom","$datenaissance","$datedeces","$image")";

$enr=mysql_query($sel,$connect);
if ($err==true){


$enr et non $err

return true;
}
else {
return mysql_error();
}
}


Avatar
Serafin
Certes, merci pour cette erreur. Mais cela ne règle rien:
$enr=mysql_query($sel,$connect); ne m'ajoute pas d'enregistrement et
mysql_error() ne me renvoit aucune reeur. Alors ?????????
function
ajouter_dans_base($lenom,$leprenom,$datenaissance,$datedeces,$image)
{
$sel="INSERT INTO acteur(nom_acteur, prenom_acteur,
naissance_acteur, deces_acteur, image1)
VALUES("$lenom","$leprenom","$datenaissance","$datedeces","$image")";

$enr=mysql_query($sel,$connect);
if ($err==true){



$enr et non $err

return true;
}
else {
return mysql_error();
}
}




Avatar
Thierry SCHMIT
bonjour,

1 - je ne sais pas quelle version de php tu utilises
2 - je ne connais pas la tête de ton connexion.php

mais je verrais bien un truc du genre

include("connexion.php");
...

$resultat=ajouter_dans_base($_REQUEST['nom'],$pren,$nais,$dec,$ima);

function
ajouter_dans_base($lenom,$leprenom,$datenaissance,$datedeces,$image)

{
global $connect; // <=====================================

$rel = ...;
$enr=mysql_query($sel,$connect);

}


en effet la fonction n'a jamais entendu parler de $connect, ce qui pose des
problèmes selon
la version et / ou la configuration de PHP, je ne sais plus bien.

amicalement

thierry

Avatar
Eric
function
ajouter_dans_base($lenom,$leprenom,$datenaissance,$datedeces,$image)
{
$sel="INSERT INTO acteur(nom_acteur, prenom_acteur,
naissance_acteur, deces_acteur, image1)

VALUES("$lenom","$leprenom","$datenaissance","$datedeces","$image­")";



$enr=mysql_query($sel,$connect);
if ($err==true){


Je ne vois pas où est déclarée $connect, or, située dans une
fonction, je ne suis pas sûr que cette variable ait la portée
nécéssaire pour te retourner le lien de connection à la base mysql.
PHP, dans ses paramètres standards, n'affiche pas les problèmes de
variables non définies.

Par ailleurs, il est toujours préférable de protéger tes variables
à l'insertion par un addslashes($leprenom) ou
mysql_escape_string($leprenom). (A moins, bien sûr que le serveur PHP
soit configuré avec magic_quotes activé)

Avatar
Serafin
bonjour,

1 - je ne sais pas quelle version de php tu utilises
2 - je ne connais pas la tête de ton connexion.php

mais je verrais bien un truc du genre


include("connexion.php");


...

$resultat=ajouter_dans_base($_REQUEST['nom'],$pren,$nais,$dec,$ima);



function


ajouter_dans_base($lenom,$leprenom,$datenaissance,$datedeces,$image)

{


global $connect; // <===================================== Ca ne marche pas ;o(


$rel = ...;
$enr=mysql_query($sel,$connect);



}



en effet la fonction n'a jamais entendu parler de $connect, ce qui pose des
problèmes selon
la version et / ou la configuration de PHP, je ne sais plus bien.

$connect est déclaré dans connexion.php (cf include en début) dont voici

le code:
<?
$connect=mysql_connect("mon_serveur","utilisateur","mdp");
$base=mysql_select_db("ma_base",$connect);

?>
Pour les requètes de type SELECT cela marche parfaitement avec cette
construction: include...
Je ne comprends rien...

Merci à tous ;o)

amicalement

thierry