Gå til innhold

Problemer med mysql_fetch_array()


Anbefalte innlegg

Når jeg prøver følgende kode får jeg denne feilmeldingen:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/endre/php/phpBB2/test.php on line 107

Noen som ser noen åpenbare feil?

<?php 
// Path to the folder of your forum, relative to this file 

$rootpath = './'; 

// Number of topics to display 

$limit = '3'; 

// Connect to the database 

include ("{$rootpath}config.php"); 

mysql_connect("{$dbhost}", "{$dbuser}", "{$dbpasswd}") or die(mysql_error()); 

mysql_select_db("{$dbname}") or die(mysql_error()); 

$getpost = mysql_query("SELECT {$table_prefix}posts.post_id, {$table_prefix}posts.poster_id, {$table_prefix}posts.post_time
FROM {$table_prefix}posts 
GROUP BY post_id DESC
LIMIT {$limit}");	
while($post = mysql_fetch_array($getpost)) 
{
 $gettopic = mysql_query("SELECT {$table_prefix}topics.topic_title, {$table_prefix}topics.topic_id
 FROM {$table_prefix}topics 
 WHERE topic_id = {$post[topic_id]}");
 while($topic = mysql_fetch_array($gettopic)) // LINJE 107
 {
 	$getuser = mysql_query("SELECT {$table_prefix}users.username, {$table_prefix}users.user_id
 	WHERE user_id = {$post[poster_id]}");
 	while($user = mysql_fetch_array($getuser))
 	{
   $posted = date("d.m.y - H:i", $post[post_time]);
   
   print "<tr>\n";
   print "<td><a href=\"{$rootpath}viewtopic.php?t={$topic['topic_id']}\" target='new'>{$topic['topic_title']}</a></td>\n";
   //print "<td>Av: {$post['post_username']}</td>\n";
   print "<td>". $posted . "</td>\n";
   print "</tr>\n\n";
 	}
 }
}

?>

 

Det er et skript for å hente ut de tre nyeste postene på en phpBB-forum.

Lenke til kommentar
Videoannonse
Annonse
$gettopic = mysql_query("SELECT {$table_prefix}topics.topic_title, {$table_prefix}topics.topic_id
FROM {$table_prefix}topics
WHERE topic_id = {$post[topic_id]}");

 

prøv å bytte ut med

$gettopic = mysql_query("SELECT {$table_prefix}topics.topic_title, {$table_prefix}topics.topic_id
FROM {$table_prefix}topics
WHERE topic_id = {$post[topic_id]}") or die("Feil under spørringsutførelsen".mysql_error());

 

Jeg tipper at mysql ikke forstår { uten ' hvis det er en streng.

 

ev bytte ut spørringen din med

$gettopic = mysql_query("SELECT '{$table_prefix}'topics.topic_title, '{$table_prefix}'topics.topic_id
FROM '{$table_prefix}'topics
WHERE topic_id = {$post[topic_id]}") or die("feil under spørring " .mysql_error());

Endret av CruellaDeVille
Lenke til kommentar

Fikk fikset det slik at jeg ikke får feilmelding ihvertfall:

<?php 

// Path to the folder of your forum, relative to this file 

$rootpath = './'; 

// Number of topics to display 

$limit = '3'; 

include ("{$rootpath}config.php"); 

mysql_connect("{$dbhost}", "{$dbuser}", "{$dbpasswd}") or die(mysql_error()); 

mysql_select_db("{$dbname}") or die(mysql_error()); 

$getpost = mysql_query("SELECT {$table_prefix}posts.post_id, {$table_prefix}posts.poster_id, {$table_prefix}posts.post_time
FROM {$table_prefix}posts 
GROUP BY post_id DESC
LIMIT {$limit}");	
while($post = mysql_fetch_array($getpost)) 
{
 $gettopic = mysql_query("SELECT {$table_prefix}topics.topic_title, {$table_prefix}topics.topic_id
 FROM {$table_prefix}topics 
 WHERE topic_id = '{$post[topic_id]}'");     // HER MÅTTE DET STÅ ' ' RUNDT {$post...}
 while($topic = mysql_fetch_array($gettopic))
 {
 	$getuser = mysql_query("SELECT {$table_prefix}users.username, {$table_prefix}users.user_id
 	WHERE user_id = '{$post[poster_id]}'");
 	while($user = mysql_fetch_array($getuser))
 	{
   $posted = date("d.m.y - H:i", $post[post_time]);
   
   /*print("<pre>");
   print_r($getpost);
   print_r($gettopic);
   print_r($getuser);
   print("</pre>");*/
   
   print "<tr>\n";
   print "<td><a href=\"{$rootpath}viewtopic.php?t={$topic['topic_id']}\" target='new'>{$topic['topic_title']}</a></td>\n";
   print "<td>Av: {$user['username']}</td>\n";
   print "<td>". $posted . "</td>\n";
   print "</tr>\n\n";
 	}
 }
}

?>

 

Men nå skjer det faktisk ingeting når skriptet kjøres i gang. :hmm:

Dere ser jeg har prøvd å printe arrayene på slutten der, men selv ikke <pre> kommer ut.

Betyr det at ekseveringen ikke kommer helt inn i loopen?

Endret av endrebjorsvik
Lenke til kommentar

Jeg fant ut av det. :w00t:

Var en del småplukk innimellom som jeg hadde oversett.

 

Ferdig skript:

<?php 

// Path to the folder of your forum, relative to this file 
$rootpath = './'; 

// Number of topics to display 
$limit = '3'; 

// Connect to the database 

include ("{$rootpath}config.php"); 

mysql_connect("{$dbhost}", "{$dbuser}", "{$dbpasswd}") or die(mysql_error()); 

mysql_select_db("{$dbname}") or die(mysql_error()); 



// Grab information and set output 

$getpost = mysql_query("SELECT post_id, poster_id, post_time, topic_id
FROM {$table_prefix}posts 
ORDER BY post_id DESC
LIMIT {$limit}") or die("MySQL-feilmelding: " . mysql_error());	
while($post = mysql_fetch_array($getpost)) 
{
 $gettopic = mysql_query("SELECT {$table_prefix}topics.topic_title, {$table_prefix}topics.topic_id
 FROM {$table_prefix}topics 
 WHERE topic_id = {$post[topic_id]}") or die("MySQL-feilmeldning: " . mysql_error());
 while($topic = mysql_fetch_array($gettopic))
 {
 	$getuser = mysql_query("SELECT username, user_id
 	FROM {$table_prefix}users
 	WHERE user_id = {$post[poster_id]}");
 	while($user = mysql_fetch_array($getuser))
 	{
   $posted = date("d.m.y - H:i", $post[post_time]);
   
   /*print("<pre>");
   print_r($getpost);
   print_r($gettopic);
   print_r($getuser);
   print("</pre>");*/
   
   print "<tr>\n";
   print "<td><a href=\"{$rootpath}viewtopic.php?t={$topic['topic_id']}\" target='new'>{$topic['topic_title']}</a></td>\n";
   print "<td>Av: {$user['username']}</td>\n";
   print "<td>". $posted . "</td>\n";
   print "</tr>\n\n";
 	}
 }
}

 

 

Så hæææærlig!! Har slitt med dette leeeeenge nå. :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...