8768 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Voila je suis en train d'automatiser un site afin d'avoir une fonction pour chaque "action".
1- Premier soucis, des que je déplace mon bout de code PHP dans ma fonction select_brand() qui se situe dans un autre fichier PHP, ca foire tout. Je ne sais pas quelle variable retourner en PHP pour transférer mes résultats d'affichage sur ma page.
2- Ma ligne mysqli_stmt_close($link); me met une erreur je ne sais pas pourquoi, pourtant ils mettent bien que cette ligne est indispensable dans les cours.
3- Fonction select_brand(), j'aimerais mettre dedans connexion_bdd() direct dedans et non dans ma page mais idem, ca ne fonctionne pas.

Fichier de ma page qui affiche les détails d'une marque :
<?php $link = connexion_bdd();
$lang_name = get_get_var('lang');
$brand_num = get_get_var('brand_num');
//$tab = select_brand($link, $brand_num, $lang_name);
$sql = "	SELECT brand_name, brand_website, brand_content 
		FROM brand, brand_text, lang 
		WHERE brand.brand_num = brand_text.brand_num 
		AND brand_text.lang_num = lang.lang_num 
		AND brand.brand_num = '".$brand_num."' 
		AND lang.lang_name = '".$lang_name."' ";
$stmt = mysqli_prepare($link, $sql);
mysqli_stmt_execute($stmt);
mysqli_stmt_bind_result($stmt, $name, $website, $content);
mysqli_stmt_fetch($stmt);?>
<p><?php echo $name; ?></p>
<p><?php echo $website; ?></p>
<p><?php echo $content; ?></p>
<?php
$deconnexion = deconnexion_bdd($link);
mysqli_stmt_close($link); ?>


Le details de mes fonctions ici :
function connexion_bdd() {
	$link = mysqli_connect(_SERVER, _DB_USER, _DB_PASS, _DB_NAME);
	if(!mysqli_set_charset($link, "utf8"))
	{
		printf("Erreur lors du chargement du jeu de caractères utf8 : %s\n", mysqli_error($link)); exit();
	}
if(mysqli_connect_errno())
	{
		printf("Échec de la connexion : %s\n", mysqli_connect_error()); exit();
	}
	return $link;
}

function deconnexion_bdd($link) {
	mysqli_close($link);
}
function select_brand($link, $brand_num, $lang_name) {
	$sql = "	SELECT brand_name, brand_website, brand_content 
			FROM brand, brand_text, lang 
			WHERE brand.brand_num = brand_text.brand_num 
			AND brand_text.lang_num = lang.lang_num 
			AND brand.brand_num = '".$brand_num."' 
			AND lang.lang_name = '".$lang_name."' ";
		
	$stmt = mysqli_prepare($link, $sql);
	$resultat = mysqli_stmt_execute($stmt);
	mysqli_stmt_bind_result($stmt, $brand_name, $brand_website, $brand_content);
	mysqli_stmt_fetch($tab);
}


Quelqu'un aurait-il une idee ?
salut fanny Smiley smile

je ne sais pas si c'est un oubli ou la raison de ton problème mais où se trouve l'include de la page qui contient les fonctions ??
Coucou Fanny...

Ok mais du coup ça ne répond pas à ma question Smiley cligne

Il est où dans le code ?

Et ensuite es tu sure que cet include est bien pris en compte ?
Un simple echo "truc"; en haut de l'include permet de le vérifier Smiley cligne

parcequ'il n'ya aucune raison que ton code avec la fonction ne fonctionne pas Smiley smile
sauf si l'include ne se fait pas Smiley smile