Any reason this wont work in a phpNuke block?

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Any reason this wont work in a phpNuke block?

Post by davidprogramer »

I can't figure out why this wont give the desired results...
It lists Home and that works fine. But the for loop doesn't work at all.

Code: Select all

$sql_ladders = sql_query("SELECT ladder_id, ladder_name FROM ".$prefix."_league_ladders");

$content .= "<br><br><center><form name=\"form1\" method=\"post\">
	<select name=\"menu1\">
	<option value=\"modules.php?name=League\">Home</option>";
for ($m=1; $m < sql_num_rows($sql_ladders)+1; $m++) {
	list($ladder_id, $ladder_name) = sql_fetch_row($sql_ladders);
	$content .= "<option value=\"modules.php?name=League&file=ladder&lid=$ladder_id\">$ladder_name</option>";
}
	$content .= "</select>
	<br><center><input type=\"button\" name=\"Button1\" value=\"Go\" onClick=\"MM_jumpMenuGo('menu1','parent',0)\">
</form>";
Last edited by davidprogramer on Wed Feb 15, 2006 4:14 am, edited 1 time in total.
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

Have you written this code yourself?
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

Yes :?

Site found here: http://www.aowars.com
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

sql_query isn't a PHP function.

Neither is sql_num_rows or sql_fetch_row.

Im sure PHP nuke uses the above like this.

$db->sql_fetch_row
$db->sql_query
$db->sql_num_rows
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

Actually you are correct. I have seen that in a few of the other block files. How would I incorporate that into my code though? When using the pointers, my list(code here) doesnt work. :cry:


For example:

Code: Select all

$sql_ladders = $db->sql_query("SELECT ladder_id, ladder_name FROM ".$prefix."_league_ladders");

$content .= "<br><br><center><form name=\"form1\" method=\"post\">
	<select name=\"menu1\">
	<option value=\"modules.php?name=League\">Home</option>";
for ($m=1; $m < $db->sql_num_rows($sql_ladders)+1; $m++) {
	list($ladder_id, $ladder_name) = $db->sql_fetch_row($sql_ladders);
	$content .= "<option value=\"modules.php?name=League&file=ladder&lid=$ladder_id\">$ladder_name</a></option>";
}
	$content .= "</select>
	<br><center><input type=\"button\" name=\"Button1\" value=\"Go\" onClick=\"MM_jumpMenuGo('menu1','parent',0)\">
</form>";
The code above causes this to happen:
Fatal error: Call to a member function on a non-object in /home/aowarsco/public_html/blocks/block-League.php on line 18
Last edited by davidprogramer on Wed Feb 15, 2006 4:19 am, edited 1 time in total.
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

Which is line 18 :?
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

hahaha sorry about that

line 18 would be :

Code: Select all

$sql_ladders = $db->sql_query("SELECT ladder_id, ladder_name FROM ".$prefix."_league_ladders");
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

Im guessing you haven't created an instance of $db...or trying to use it before it has been declared

Usually something like this

Code: Select all

$db = new database({connectioninfo})
...but im not too familiar with PHP Nuke
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

That actually worked...

I declared $db as a global variable at the top of the script. Now the following line is giving me an error:

Code: Select all

for ($m=1; $m < $db->sql_num_rows($sql_ladders)+1; $m++) {

Fatal error: Call to undefined function: sql_num_rows() in /home/aowarsco/public_html/blocks/block-League.php on line 25
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

post the whole code for block-League.php
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

Code: Select all

<?php

if ( !defined('BLOCK_FILE') ) {
    Header("Location: ../index.php");
    die();
}

global $db;

// Links
$content .= "<img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=League\">Home</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=League&file=hall_of_fame\">Hall of Fame</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=Forums\">Forums</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=Members_List\">Members</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=League&file=staff\">Staff</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=Private_Messages\">Messages</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=FAQ\">Support</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=Statistics\">League Stats</a>";
$content .= "<br><img src=\"images/arrow.gif\" border=\"0\" alt=\"\">&nbsp;<a href=\"modules.php?name=Members_List\">Members</a>";

// Begin Dropdown Menu Code
$sql_ladders = $db->sql_query("SELECT ladder_id, ladder_name FROM ".$prefix."_league_ladders");

$content .= "<br><br><center><form name=\"form1\" method=\"post\">
	<select name=\"menu1\">
	<option value=\"modules.php?name=League\">Home</option>";
for ($m=1; $m < $db->sql_num_rows($sql_ladders)+1; $m++) {
	list($ladder_id, $ladder_name) = $db->sql_fetch_row($sql_ladders);
	$content .= "<option value=\"modules.php?name=League&file=ladder&lid=$ladder_id\">$ladder_name</a></option>";
}
	$content .= "</select>
	<br><center><input type=\"button\" name=\"Button1\" value=\"Go\" onClick=\"MM_jumpMenuGo('menu1','parent',0)\">
</form>";
?>
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

are you including this file in another file?

if so, show me the other file
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

No, I am just activating it the default way through the admin control panel of phpNuke.
User avatar
JayBird
Admin
Posts: 4524
Joined: Wed Aug 13, 2003 7:02 am
Location: York, UK
Contact:

Post by JayBird »

im not sure then...im dont know PHP Nuke well enough to help you further
davidprogramer
Forum Commoner
Posts: 64
Joined: Mon Nov 28, 2005 6:11 pm

Post by davidprogramer »

Alright, Thanks for trying :wink:

Can anyone else provide some insight?
Post Reply