Probleme recuperation donnée

Eléphant du PHP | 65 Messages

26 mars 2006, 20:59

Bonsoir,

voilà je souhaite récuperer une donnée d'un champ d'une autre page pour la mettre dans une sql. Ce champ est un champ tapé dans une case...
<?php 
// On commence par récupérer les champs 
$Numero_News = isset($_POST['Numero_News']) ? $_POST['$Numero_News'] : ''; 

// On vérifie si les champs sont vides 
if(empty($Numero_News))
{ 
echo '<center><b><font color="red">Attention, mauvaise Entrée !</font></center></b>'; 
} 

// Aucun champ n'est vide, on peut enregistrer dans la table 
else 
{
// on se connecte à MySQL 
$db = mysql_connect('***', '***', '***'); 

// on sélectionne la base 
mysql_select_db('News',$db);

// on crée la requête SQL 

{ 
// on crée la requête SQL 
$sql = 'SELECT * FROM News WHERE Numero_News=". '$Numero_News' ."'; 
Bon j'ai coupé à la fin de la sql car il me dis qu'il y a une erreur de T_VARIABLE...

Quelqu'un pourrait il m'aider ?

:wink:

Mammouth du PHP | 19672 Messages

26 mars 2006, 21:31

Il y a une erreur de concaténation PHP dans la ligne suivante :
$sql = 'SELECT * FROM News WHERE Numero_News=". '$Numero_News' ."';
La requête générée ressemble alors à ceci:

à corriger de la manière suivante :
$sql = 'SELECT * FROM News WHERE Numero_News="'. $Numero_News .'"';
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 65 Messages

28 mars 2006, 08:42

merci ca ma bien aidé !!

Autre question :

Je souhaite faire un moteur de recherche avancée mais dans ma sql il y a un soucis :

Code : Tout sélectionner

SELECT * FROM Table WHERE Champ1="..." OR Champ2=..."
Le soucis est que si je met "OR", il m'affiche tout sur tout, mais si je met AND il ne m'affiche rien...

Je pense que le soucis c'est que comme je recupere les données avant, la ou je ne met rien, il chercher rien... Enfin si vous avez une idée..

Merci

Mammouth du PHP | 19672 Messages

28 mars 2006, 08:55

Nouveau problème :arrow: nouveau sujet.

Ceci dit, le résultat obtenu est normal dans la mesure où les conditions sont vérifiées : avec le OR, tu récupères les lignes si une des correspondances est trouvée. Avec AND, tu auras les lignes où toutes les correspondances sont trouvées.

Tu devrais détailler un peu ta question en illustrant avec un exemple.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: