PHP

Sélection de mot commençant par la même lettre

Résolu

Bonjour,


j'ai un code qui fonctionne, ça m'affiche lorsque je click sur une ancre " A" , toutes les réferences liées au theme MANGA qui commencent par la lettre A.

Ceci dit, il faudrait que je fasse un copié collé sur toutes les DIV intégrant les letres A a la lettre Z car mon code n'est que pour une seule lettre !

Quelqu'un aurait une idée pour optimiser mon code ? de façon a ce que se soit moins répétitif ?

Peut êtres dans une fonction ? mais je ne sais pas trop les utiliser je m'y connais trop mal,,,


Merci pour vos réponses


<div class="conteneur_lettres" ><p>A</p></div>
								
  <ul class="references" id="style-A">										      <?php 
										$a=mysqli_query($con,"select * from product	where product.categories_id = '59' AND name like 'A%'											");
											$a_array=array();
																					while($a_row=mysqli_fetch_assoc($a))
{
 $a_array[]=$a_row;  										   
}
											if(count($a_array)>0)
{							                 foreach($a_array as $list_a)									            {
										                ?> 
										                    <li>									                        <a href="categories.php?id=<?php echo $list_a['id']?>">						                           
										                            <img src="<?php echo PRODUCT_IMAGE_SITE_PATH.$list_a['image']?>">
										                             <p class="p" style="color: white"><?php echo $list_a['name']?></p>
										                        </a>
										                    </li>
										                <?php
										            }
												}else{
													echo '<div style="position: absolute;"><h1 style="color: white;">Aucunes références à cette lettre</h1></div>';
												}
?>	
</ul>
</div>
1154 vues
03 août 2020 à 9:25 (Édité)
Cette pub permet au site de vivre ...

15 commentaires

Re:


D'accord, je vais en parler à @Clouder...

Est-ce que la documentation t'a aidé ? 🤔

@Jerem971


Les espaces inutiles c’est sûrement dû à un bug je pense car il n’y en avait pas quand j’ai édité.


Je ne sais plus c’était un lien sur you tube .j’ai juste regardé comment s’utiliser substr() Et essaye de l’adapter à mon code .

Re:


Tu peux éviter de mettre des espaces inutiles dans tes messages et utilisé correctement les balises ? Fais attention aux fautes d'orthographes (tu peux en faire mais pas trop)... (j'ai réédité)

Quel est le tuto que tu as suivis ? 🤔 J'en aurai besoin pour t'aider...

Bonjour @Jerem971


J'ai regardé des petits tutos mais je n'arrive pas a adapter le code :


<?php
require('connection.inc.php');

$name ="select product.name from product where product.categories_id = '59'";
$res=mysqli_query($con,$name);

$resultat= '';

?>

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
<?php
while($row=mysqli_fetch_assoc($res))
	{
		$resultat= substr($res, 0, 1);
		?>
			<h2><?php echo $row['name']; ?></h2>
		<?php	

	}
?>
</body>
</html>


Mon code devrait,


  1. me connecter à la base de données (ok)
  2. récupérer que les noms de la table product (ok)
  3. récupérer la premiere lettre de chaque mot et l'afficher mais ça m'envoit des erreurs :


Warning: substr() expects parameter 1 to be string, object given in C:\xampp\htdocs\SITES\E-commerce\bienvenue\LETTRES.php on line 24


LA LIGNE 24 c'est dans la boucle WHILE au niveau de la variable $resultat

Hello @Dieunel,


La fonction "substr" de PHP devrait répondre à ton besoin 😉 Voilà la documentation 😉

Cette pub permet au site de vivre ...
1
2