Avatar billede kongfjong Nybegynder
22. august 2006 - 12:39 Der er 7 kommentarer og
1 løsning

Forunderligt problem med db-forespørgsel

Hej, jeg sidder pt. med et meget underligt problem. Har en forespørgsel til min MySQL database:

(SELECT 'behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM behandlinger_info) UNION ALL (SELECT 'spec_behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM spec_behandlinger_info) ORDER BY create_date DESC LIMIT 1

Når jeg tester den i phpMyAdmin, fungerer den perfekt, men når jeg kører den i mit php-script, som er som følger:

$nyeste = mysql_query("(SELECT 'behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM behandlinger_info) UNION ALL (SELECT 'spec_behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM spec_behandlinger_info) ORDER BY create_date DESC LIMIT 1");

if ($nyeste = 1) {
    $nyeste_array = mysql_fetch_array($nyeste)
// Noget mere kode
}

Så melder den fejl:

"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in....bla bla bla..."

Nogen der kan se sig ud af dette problem, for nu har jeg godt nok stirret mig blind på det...
Avatar billede iss Novice
22. august 2006 - 12:43 #1
Erstat:
$nyeste = mysql_query("(SELECT 'behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM behandlinger_info) UNION ALL (SELECT 'spec_behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM spec_behandlinger_info) ORDER BY create_date DESC LIMIT 1");
med
$nyeste = mysql_query("(SELECT 'behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM behandlinger_info) UNION ALL (SELECT 'spec_behandlinger_info' AS tabel, teaser, behandling_id, create_date FROM spec_behandlinger_info) ORDER BY create_date DESC LIMIT 1") or die(mysql_error());
Og se...
Avatar billede kongfjong Nybegynder
22. august 2006 - 12:46 #2
SÅ kommer samme fejl:

mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web2871/html/hudplejeklinikken/config.inc on line 6
Avatar billede erikjacobsen Ekspert
22. august 2006 - 12:46 #3
Du kan ikke sige
  if ($nyeste = 1) {
Det er en tilordning. Måske tænkte du
  if ($nyeste == 1) {
der er en sammenligning, men det kan du heller ikke. Så muligvis er det du søger så
  if (mysql_num_rows($nyeste) == 1) {
Avatar billede kongfjong Nybegynder
22. august 2006 - 12:50 #4
Damn Erik... Det har jeg da kunne før, men det er måske kun når man INDSÆTTER data?
Avatar billede erikjacobsen Ekspert
22. august 2006 - 12:54 #5
Det tror jeg nu ikke du har kunnet før. Du har kunnet se om en UPDATE er gået godt eller ej, som du også kan med en SELECT, men ikke antallet af rækker. Læs om på
  http://php.net/mysql_query
  http://php.net/mysql_num_rows
  http://php.net/mysql_rows_affected
Avatar billede kongfjong Nybegynder
22. august 2006 - 13:13 #6
ah ok:) lig et svar:)
Avatar billede erikjacobsen Ekspert
22. august 2006 - 13:14 #7
Nej tak, jeg samler slet ikke på point.
Avatar billede kongfjong Nybegynder
22. august 2006 - 17:46 #8
Okay, tak;)
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