Bonsoir à tous,

Je dois passer à sqli pour mon hébergement car les requête commencent à donner des erreurs à la version suivante php 5.5 (standard actuel php 5.4 en fin de vie - conseillé php 5.6).

J'arrive à le faire pour une requête, mais ici j'ai besoin d'une requête durant le while de la première.
J'ai vérifié les noms des tables et des champs (même un copier coller depuis la BDD ).

Voici le bout de code qui me pose problème : $sql2 en particulier

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
<?php
include ('../connect_sqli.php');
 
// --------------- Listing des chiens : les classes des chiens
$sql="SELECT id_chien, id_prop, p_nom, p_prenom, c_nom, c_classe, c_prop 
	FROM m_chien chien 
		INNER JOIN m_prop prop ON chien.c_prop=prop.id_prop 
	ORDER BY id_chien";
$requete=mysqli_query($conn, $sql);	
 
while ($in = mysqli_fetch_array($requete)){
	$prop_nom=$in[p_nom];
	$prop_prenom=$in[p_prenom];
	$chien_nom=$in[c_nom];
	$chien_classe=$in[c_classe];
	$chien_id=$in[id_chien];
	$color='blue';
 
	// ---------- Les classes
	if ($chien_classe!='') {
		$chien_classe_explode=explode (';',$chien_classe);
		$chien_classe_nbr=count ($chien_classe_explode);
 
		for ($i=0; $i<$chien_classe_nbr; $i++) {
			$classe_chien=$chien_classe_explode[$i];
 
			if ($classe_chien=='') { $color='red'; }
				else { $color='black'; }
 
			print "* $classe_chien - "; // ----- test de valeur : OK
 
			if ($classe_chien!='0') { // ----- cela bloque si 0 au lieu de '0' ???? pourtant c'est le chiffre
				print " $classe_chien *"; // ----- test de passage : OK avec '0'
 
				// ----- Lecture des classes et section : conversion
				$sql2="SELECT cours_classe_section_id, cours_section_id, cours_classe_nom, cours_classe_id, cours_section 
					FROM d_cours_classe classe
						INNER JOIN d_cours_section section ON classe.cours_classe_section_id=section.cours_section_id
					WHERE classe.cours_classe_nom='$classe_chien'";
				$requete2=musqli_query($conn, $sql2);
 
				while ($in2 = mysqli_fetch_array($requete2)){
					$classe_id=$in2[cours_classe_id];
					$classe_section=$in2[cours_section];
 
				}
 
				if ($i==0) { $classe_new='1. '.$classe_section.':'.$classe_id; }
				else { $classe_new=$classe_new.'; 2. '.$classe_section.':'.$classe_id; }
			}
			print "<br />";
		}
	}
	else { $chien_classe_nbr=0; $classe_new='4B:5'; }
 
 
	print "- $prop_prenom $prop_nom : [$chien_id] $chien_nom <br />&nbsp;&nbsp;&nbsp; ---> <font color=\"$color\">[$chien_classe_nbr] $chien_classe </font> => $classe_new<br />";
	unset ($classe_new, $color);
}
 
mysqli_close($conn); // Déconnexion de MySQL
?>
Une fois le code fonctionnel, je rectifie les erreurs de l'interface chaise-clavier et ensuite j'écris les nouvelles valeurs dans la BDD (les couleur pour identifier des erreurs).

Je suis preneur pour toute solution.

NB : en sql je suis certains de faire fonctionner, mais j'ai l'obligation de commencer en sqli.

@+
DDAWEB