[php/sql]query geeft Too few parameters. Expected 1., SQL st

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • AtlonXP1800
  • Registratie: Augustus 2001
  • Laatst online: 29-01 12:01
Ik probeer in een via odbc gekoppelde database een query uit te voeren.

ik gebruik hiervoor het volgende stukje code:

code:
1
2
3
4
$connectionstring = odbc_connect('test','','') ;

   $queryexe = odbc_exec($connectionstring, 'SELECT * FROM "muziek - albums" WHERE "Artiest" = "bla" '); 
       if ($queryexe==false) die("Helaas, een foutje");


dit geeft de volgende foutmelding:
arning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1., SQL state 07001 in SQLExecDirect in C:\apache2\htdocs\phpauth.php on line 34
Helaas, een foutje
Als ik het stukje [WHERE "Artiest" = "bla"] weg haal krijg ik gewoon netjes de hele tabel te zien.
ziet iemand mijn fout?

line 34 is trouwens de regel met de querie

Acties:
  • 0 Henk 'm!

Verwijderd

PHP:
1
$queryexe = odbc_exec($connectionstring, "SELECT * FROM muziek - albums WHERE Artiest = bla");


werkt dat niet? ik denk iig dat het iets met de quotes is..

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 21:21

gorgi_19

Kruimeltjes zijn weer op :9

SQL:
1
SELECT * FROM [muziek - albums] WHERE Artiest = 'bla'


Alleen wat een naam voor een tabel.. :X

En MS Access eist die quotes rondom een string.

[ Voor 45% gewijzigd door gorgi_19 op 07-11-2003 20:11 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • AtlonXP1800
  • Registratie: Augustus 2001
  • Laatst online: 29-01 12:01
ook ik denk dat het iets met de quotes is, maar ik kan er niet uit komen hoe het wel moet...

WHERE Artiest = bla geeft Too few parameters
WHERE Artiest = 'bla' geeft unexpected T_STRING

ik weet de de tabelnaam niet echt ideaal is, maar de hele db is aangemaakt lang voordat ik van php had gehoord, en was alleen maar een simpele database om in access te bekijken. Met de blokhaken ert om heen is hij ook uit te lezen (en het ziet er wat duidelijker uit dan de quotes)

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 21:21

gorgi_19

Kruimeltjes zijn weer op :9

Dat is logisch, omdat je je andere code ook al gebruikt maakt van single quotes, en die interfereren. Je moet ze escapen in de SQL string; geen idee hoe dat moet in PHP.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • AtlonXP1800
  • Registratie: Augustus 2001
  • Laatst online: 29-01 12:01
uiteraard, dat ik daar zelf niet aan had gedacht. 8)7
nu werkt het!

nu eens kijken of het ook nog werkt als 'bla' een variable is uit een form...

[ Voor 7% gewijzigd door AtlonXP1800 op 07-11-2003 20:33 ]


Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

gorgi_19 schreef op 07 november 2003 @ 20:29:
geen idee hoe dat moet in PHP.
Net als in C, C++, Java, Perl, e.a. \' :)

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 12-09 13:36
Of automatisch met addslashes of magic quotes, mocht je dat fijn vinden.

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 21:21

gorgi_19

Kruimeltjes zijn weer op :9

ACM schreef op 07 november 2003 @ 21:11:
[...]

Net als in C, C++, Java, Perl, e.a. \' :)
Ook allemaal talen die ik niet beheers.. :P

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1