Toon posts:

[php] controleren of iets in database zit

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb wat charts op mijn site staan, nu wil ik dmv van een scriptje kijken of die nummers uit de charts ook als lyric in mijn database staan. Daarvoor had ik het volgende.
PHP:
1
<?require("variables.php3");$num = 1;while ($num < 41) {$sql = "select * from mmdtop40 where id = '$num'";$result = mysql_query($sql) or die (mysql_error());$row = mysql_fetch_object($result);$sql2 = "select * from mp3s where Artist = '$row->artiest' OR Song = '$row->titel'";$result2 = mysql_query($sql2);$aantal = mysql_num_rows($result2);if ($aantal > 0){mysql_query("update mmdtop40 set aanwezig = yes");}else{mysql_query("update mmdtop40 set aanwezig = no");}$num++;}?>

Maar hij blijkt niet te werken, dit is de error:

Warning: Supplied argument is not a valid MySQL result resource in /home/sites/site181/web/test/incheck.php3 on line 15

Warning: Supplied argument is not a valid MySQL result resource in /home/sites/site181/web/test/incheck.php3 on line 15

Warning: Supplied argument is not a valid MySQL result resource in /home/sites/site181/web/test/incheck.php3 on line 15

lijn 15 is de lijn met
$aantal = mysql_num_rows etc

ik neem dus aan dat er een fout in de query zit, maar ik heb hem al meerdere keren geecho'ed en ik kan niks ontdekken, wie weet wat er aan de hand kan zijn?

Bij voorbaat dank!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

En als je achter al je mysql functies or die(mysql_error()) zet :?

Krijg je dan geen melding _wat_ er fout gaat?
De executie van de query gaat sowieso niet goed, probeer die es op de mysql-prompt of in phpmyadmin oid.

Verwijderd

Topicstarter
You have an error in your SQL syntax near 'house' OR Song = ''' at line 1

:?

zal het iets met slashes te maken hebben...die dingen in m'n databeest zijn met addslashes ingevoerd...moet ik ze eerst strippen dan?

Ik dacht namelijk dat dat niet uitmaakte omdat ik de code nog nergens uitspuug

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Dat maakt niet uit voor je resultaat...

Het resultaat zal wel goed, gaan. De query parsing zal al fout gaan..
[Artist = 'bla 'house']
als stuk van je query is natuurlijk ongeldig, dat kan je met mysql_escape_string() oplossen (die over je input halen is altijd wel handig als je die input in mysql gaat stoppen)

Verwijderd

Topicstarter
nou...nu ik slashes add doet ie t :)

http://www.mp3charts.nu/test/incheck

:)

toch bedankt! :D

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 09-09 20:58

Janoz

Moderator Devschuur®

!litemod

Weet je wel zeker dat ie het doet? Ik denk het namelijk niet.. (Zet voor de gein eens 1 nummer in de db waarvan je de lyrics hebt, en kijk hoeveel nummers YES krijgen)

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


  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 23:00

TheDane

1.618

Op donderdag 28 maart 2002 16:07 schreef Janoz het volgende:
Weet je wel zeker dat ie het doet? Ik denk het namelijk niet.. (Zet voor de gein eens 1 nummer in de db waarvan je de lyrics hebt, en kijk hoeveel nummers YES krijgen)
>:)

Verwijderd

Topicstarter
Inderdaad ja...die fout had ik ook gelijk ontdekt, bij de update query heb ik niet gezet bij welke id die het moest updaten...beetje stom. Inmiddels heb ik 'm wel omgebouwd en stop ik gewoon alle gegeven in txt files zodat ik niet zoveel databeest werk moet doen elke keer, en die txt files update ik gewoon iedere 3 uur door te kijken of ze al zijn toegevoegd :)
Pagina: 1