[PHP] fout bij ophalen data*

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik geef het volgende commando:
code:
1
2
3
4
5
$result=mysql_db_query($DBName,"SELECT * from ".$ForumPrefix."topics WHERE topic_id=$topic_id"); // dit is lijn 71

$UserData=mysql_fetch_assoc($result); // dit is dus lijn 72

return $UserData["topic_title"];


Als ik dit nu start krijg ik een error:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in E:\Phperl2.3\Websites\Site1\www\myfile.php on line 72

Je raad het al, heb er achter gezet wat lijn 72 is.
Volgens mij is er niks mis mee met dit statement maar toch krijg ik een error, iemand een idee waar dit aan kan liggen of wat het kan zijn?

Acties:
  • 0 Henk 'm!

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 18-09 16:24

mulder

ik spuug op het trottoir

mysql_db_query geeft waarschijnlijk een error terug, probeer die eerst maar eens te achterhalen

oogjes open, snaveltjes dicht


Acties:
  • 0 Henk 'm!

  • momania
  • Registratie: Mei 2000
  • Laatst online: 17-09 07:50

momania

iPhone 30! Bam!

Ziet eruit alsof je result niet gevuld wordt, ofwel: je query is gewoon niet goed.

de volgorde van de params voor myswl_db_query is ook anders geloof ik
eerst de query, dan de db variable. jij hebt het nu andersom

Neem je whisky mee, is het te weinig... *zucht*


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
mmmm, heb nu idd de error maar die is nog vreemder..
Error (line 71): Access denied for user: 'XXX@localhost' to database

Nu vraag ik me af hoe kan dat nou, de username, pass en dbname zijn correct ingevuld en elders in het script werkt het wel.

Acties:
  • 0 Henk 'm!

  • epter
  • Registratie: Juni 2003
  • Laatst online: 15-05-2005
Als je de query eerst in een variabele zet, is die error waarschijnlijk verholpen... Dus eerst $query = .... en dan mysql_db_query($db, $query) php/mysql doet een beetje gek met alle quotes en waar ze wel of niet mogen staan...

Acties:
  • 0 Henk 'm!

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Verwijderd schreef op 10 June 2003 @ 15:42:
mmmm, heb nu idd de error maar die is nog vreemder..
Error (line 71): Access denied for user: 'XXX@localhost' to database

Nu vraag ik me af hoe kan dat nou, de username, pass en dbname zijn correct ingevuld en elders in het script werkt het wel.
Elders in je script... Is dat een script wat toevallig ergens anders draait?

Sundown Circus


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

kom kom, een beetje debuggen mag ook wel. Gewoon wat variabelen echoen. Weet je zeker dat $DBName ook op die plaatst de waarde heeft die je verwacht? Ik heb namelijk het vermoden dat ie leeg is.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

Verwijderd

$result=mysql_db_query($DBName,"SELECT * from ".$ForumPrefix."topics WHERE topic_id=$topic_id");

volgens mij moet je de quotjes om de query ook even controleren. Ze lijken niet helemaal correct.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Nee die is dus vol.
Ik echo alle waardes voor de query en dan staan ze er gewoon.
Snap er niks van, er is volgens mij niks mee mij heel dat commando en toch geeft ie een error dat die niet kan connecten.

RedRose: met elders bedoelde ik in hetzelfde php bestand.
epter: Geprobeert maar ook dan een error.

Het vreemde is dat er net boven een bijna identieke opdracht staat alleen een andere waarde en daar geeft ie geen enkele fout.

Acties:
  • 0 Henk 'm!

  • momania
  • Registratie: Mei 2000
  • Laatst online: 17-09 07:50

momania

iPhone 30! Bam!

code:
1
WHERE topic_id=$topic_id"

moet iig nog worden:
code:
1
WHERE topic_id=".$topic_id


en:
Error (line 71): Access denied for user: 'XXX@localhost' to database

is gewoon rechten probleempje.
Heb je die user net aangemaakt, of die db net aangemaakt? -> MySql even restarten

Neem je whisky mee, is het te weinig... *zucht*


Acties:
  • 0 Henk 'm!

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Alhoewel je je query netter kan schrijven, denk ik toch dat er iets mis is met de rechten van de user waar je mee connect op die specifieke table.

• Check dus alle rechten die in de MySQL-table staan ff na;
• Zoek de preciese verschillen met queries die wel werken en ga na of die verschillen van invloed zijn.

Sundown Circus

Pagina: 1