Fonction menu

Petit nouveau ! | 8 Messages

10 juin 2006, 11:34

Bonjour,
un bout de code avant ma question

page appellant la fonction
<?php
require ("menu.php");

$db = new MySQL (NAME, PASS, BASE, SERVER);
menu($db, right);

?>
Fonction:
<?php
require ("require.php");

function menu($db, $type){

if($type == right){
$request = $db->execRequest("SELECT * FROM menu_links WHERE title='Welfare Links'");
// pourquoi si je declare ma variable :$e=$result->title; et que je met $e en tant que condition de mon while in ne s'affiche pas?

echo "<ul>\n";
// objectNext c'est un fetch_object
while ($result = $db->objectNext($request)){
echo "<li><a href=\"$result->description\">$result->right</a></li>\n";
}
echo "</ul>";
}
else
echo "lolo";
}

?>

Donc la question:

Je voudrai faire une fonction ou des fonctions Menu, alors ca c'est la premiere question:
Vaut il mieu faire une fonction avec des if (Right){}, elseif (top){}elseif... ou une fonction de chaque right(), top()...ect...?

la deuxieme:
Comment on fait???????????? Je n'arrive pas a mettre mon objet dans une variable object en fonction de ce que renvoi la requete sql en fonction de la fonction comme ci dessous:
if($type == right){
$request = $db->execRequest("SELECT * FROM menu_links WHERE title='Welfare Links'");
// pourquoi si je declare ma variable :$e=$result->title; et que je met $e en tant que condition de mon while in ne s'affiche pas?
$link = $result->description;
$content = $result->right;
}
elseif($type == top){
$request = blabla;
$link = machin;
$content = bidule;
}
echo "<ul>\n";
while ($result = $db->objectNext($request)){
echo "<li><a href=\"$link\">$content</a></li>\n";

Voila merci

Eléphant du PHP | 413 Messages

12 juin 2006, 17:09

salut,
Vaut il mieu faire une fonction avec des if (Right){}, elseif (top){}elseif... ou une fonction de chaque right(), top()...ect...?
réponse : c'est kif-kif.
echo "<li><a href=\"$result->description\">$result->right</a></li>\n";
je pense que tu devrais sortir $result->description et right des guillemets, comme ceci :
echo "<li><a href=\"". $result->description. "\">". $result->right ."</a></li>\n";
--
Goeb

Petit nouveau ! | 8 Messages

16 juin 2006, 21:49

Merci beaucoup goeb ca m'a bien servi.

Voila j'ai un tit probleme encore et je m'en sort pas..

j'essaie de faire une fonction faq dont les données sont sur la bdd.

La fonction mlist va servir a d'autres fonctions, mon probleme c'est que je n'arrive pas a trouver le moyen d'afficher dans ma fonction faq "$result->content" la variable du fetch_object reste dans la fonction mlist et si je la refait depuis ma faq rien ne s'affiche...
function faq($db, $page){
	$query = $db->query("SELECT id, title, content, category FROM news WHERE category = 'faq' ORDER BY id ASC");
	mlist ($db, $query, category, title);
	}	

function mlist ($db, $query, $link, $content){
	echo "<ul>\n";
	while ($result = $db->fetch_object($query)){
	echo "<li><a href=\"";
		if (eregi ("^(http://)", $result->$link)){
		echo $result->$link;
		}
		else { 
		echo "home.php?page=".$result->$link."&id=".$result->id."";
		}
	echo "\">".$result->$content."</a></li>\n";	
	}
	echo "</ul>";
	}
je c pas si c'est clair, la j'ai les titres de chaques questions et je veux que la reponse s'affiche (n'importe ou car je la mettrai dans un div) quand je clique sur le lien (en faisant un signet, j'ai rien trouver de mieu).

si quelqun a une idee, merci.

edit: si au passage vous avez une solution pour mettre moin de echo et faire un truc plus clean je suis prenneur.

Eléphant du PHP | 413 Messages

20 juin 2006, 13:12

mlist ($db, $query, category, title); 
c'est quoi "category" et "title" ?
des constantes ?

et elle n'ont pas l'air utilisées dans la fonction mlist. est-ce normal ?
--
Goeb