Avatar billede videodyr Nybegynder
06. december 2004 - 11:38 Der er 6 kommentarer og
1 løsning

Fejl i SQL sætning

Hejsa

Den sider at der er fejl i denne SQL sætning, men jeg kan ikke lige se fejlen.
select * from programmer where installprogram = '$Installerede'

$installerede har værdi = Agere Systems AC'97 Modem
Avatar billede Slettet bruger
06. december 2004 - 11:55 #1
prøv lige engang at erstatte ' med \'
$installerede = str_replace("'", "\\'", $installerede);

Der er også en funktion som escaper de nødvendige karakterer, men jeg kan ikke lige huske den. Vender lige tilbage..
Avatar billede Slettet bruger
06. december 2004 - 11:57 #2
Nårh ja: mysql_escape_string hedder den..

$installerede = mysql_escape_string($installerede);
Avatar billede Slettet bruger
06. december 2004 - 12:00 #3
Men for lige at pensle det ud, er det jo fordi når variablen $installerede == "Agere Systems AC'97 Modem"

Bliver din SQL-query:
SELECT * FROM programmer WHERE installprogram = 'Agere Systems AC'

og så med:
97 Modem'

bagefter, som jo ingen mening vil give for SQL.

:-)
Avatar billede jakoba Nybegynder
06. december 2004 - 12:00 #4
når det programnavn indsættes istedet for $Installation bliver din sql kommando til:
  select *
  from programmer
  where installprogram = 'Agere Systems AC'97 Modem'

og så tror sql at strengen slutter ved det '-tegn der står efter AC. resten forstår sql ikke oså den melder fejl.
prøv med:

$sql_kommando = "select * from programmer where installprogram = '" .addslashes($Installerede) ."'";

PS når noget går galt er det en god ide at udskrive SQL's fejlmeddelelse, nogen gange hjælper den:

$resuktatset = mysql_query( $sql_kommando )
              or die( mysql_error() );
                  // die funktionen stopper scriptet og udskriver den tekst den får som parameter.

mvh JakobA
Avatar billede jakoba Nybegynder
06. december 2004 - 12:05 #5
undskyld gartzen, jeg er lannngsom.
Avatar billede Slettet bruger
06. december 2004 - 12:10 #6
Det går skam nok ;o)
Det er godt med flere forskellige forklaringer..
Avatar billede videodyr Nybegynder
09. marts 2005 - 00:33 #7
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester