PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Autres forums > Forum Programmation & Conception > comp.databases.mysql > mysql_error question
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
mysql_error question

Réponse
 
LinkBack Outils de la discussion
Vieux 14/02/2008, 18h18   #1
GarryJones
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut mysql_error question

I am accessing a Mysql database with php scripting

This first version works ok
$cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num = 79';
$cykdagers_tbd=mysql_query($cykdag_collers);
echo mysql_error();

But 79 is a variable so I tried this

$cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers';
$cykdagers_tbd=mysql_query($cykdag_collers);
echo mysql_error();

And got this error
Unknown column '$cykdag_ers' in 'where clause'

So I tried this
$cykdag_collers="SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers";
$cykdagers_tbd=mysql_query($cykdag_collers);
.......which seems to work ok as far as I can tell. But when adding
"echo mysql_error()" to the same code
like this
$cykdag_collers="SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers";
$cykdagers_tbd=mysql_query($cykdag_collers);
echo mysql_error();

it reports this error...
You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use
near '' at line 1

Can I ignore this? How can I do this without getting an error? The
error will confuse my users but I want to use echo mysql_error() in
case it reports other errors.

Any apreciated

Garry Jones
Sweden
  Réponse avec citation
Vieux 14/02/2008, 18h24   #2
Rik Wasmus
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: mysql_error question

On Thu, 14 Feb 2008 19:18:09 +0100, GarryJones <morack@algonet.se> wrote:

> I am accessing a Mysql database with php scripting
>
> This first version works ok
> $cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num = 79';
> $cykdagers_tbd=mysql_query($cykdag_collers);
> echo mysql_error();
>
> But 79 is a variable so I tried this
>
> $cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers';
> $cykdagers_tbd=mysql_query($cykdag_collers);
> echo mysql_error();
>
> And got this error
> Unknown column '$cykdag_ers' in 'where clause'
>
> So I tried this
> $cykdag_collers="SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers";
> $cykdagers_tbd=mysql_query($cykdag_collers);
> ......which seems to work ok as far as I can tell. But when adding
> "echo mysql_error()" to the same code
> like this
> $cykdag_collers="SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers";
> $cykdagers_tbd=mysql_query($cykdag_collers);
> echo mysql_error();
>
> it reports this error...
> You have an error in your SQL syntax; check the manual that
> corresponds to your MySQL server version for the right syntax to use
> near '' at line 1
>
> Can I ignore this? How can I do this without getting an error? The
> error will confuse my users but I want to use echo mysql_error() in
> case it reports other errors.


Don't display an error, log an error, just base your further actions on
the fact wether there is en error...

Here you go:
$cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num =
'.intval($cykdag_ers);
$cykdagers_tbd=mysql_query($cykdag_collers);
if(!$cykdagers){
trigger_error(mysql_error());
echo 'Sorry, something went wrong';
}
//..rest of code
--
Rik Wasmus
  Réponse avec citation
Vieux 15/02/2008, 03h37   #3
Jerry Stuckle
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: mysql_error question

GarryJones wrote:
> I am accessing a Mysql database with php scripting
>
> This first version works ok
> $cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num = 79';
> $cykdagers_tbd=mysql_query($cykdag_collers);
> echo mysql_error();
>
> But 79 is a variable so I tried this
>
> $cykdag_collers='SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers';
> $cykdagers_tbd=mysql_query($cykdag_collers);
> echo mysql_error();
>
> And got this error
> Unknown column '$cykdag_ers' in 'where clause'
>
> So I tried this
> $cykdag_collers="SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers";
> $cykdagers_tbd=mysql_query($cykdag_collers);
> ......which seems to work ok as far as I can tell. But when adding
> "echo mysql_error()" to the same code
> like this
> $cykdag_collers="SELECT * FROM cykdag WHERE cykdag_num = $cykdag_ers";
> $cykdagers_tbd=mysql_query($cykdag_collers);
> echo mysql_error();
>
> it reports this error...
> You have an error in your SQL syntax; check the manual that
> corresponds to your MySQL server version for the right syntax to use
> near '' at line 1
>
> Can I ignore this? How can I do this without getting an error? The
> error will confuse my users but I want to use echo mysql_error() in
> case it reports other errors.
>
> Any apreciated
>
> Garry Jones
> Sweden
>


Always check the result of a mysql command. If it is false, THEN check
the error message. I don't believe it is guaranteed to be valid if no
error is returned.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================

  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 22h18.


Édité par : vBulletin® version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières ©2000-2008
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 2,01065 seconds with 11 queries