par
Xotaz » 06 nov. 2020, 23:27
Bonsoir,
Je vous expose mon problème, avec la fonction onchange dans un menu déroulant tout fonctionne bien.
Le hic, je voudrais afficher des images avec Onclick et en cliquant dessus changer le contenu dans la <div id=txt"> (sans recharger la page) avec le contenu du fichier "script.php".
Seulement le contenu ne s'affiche pas. Après y a aussi un affichage par ordre alphabétique, je ne sais pas si cela gène la requête ?
script.js
Code : Tout sélectionner
function Vid(str) {
if (str == "") {
document.getElementById("txt").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txt").innerHTML = this.responseText;
}
};
xmlhttp.open("GET","script.php?q="+str,true);
xmlhttp.send();
}
}
home.php
Code : Tout sélectionner
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style/home.css">
<title>Test</title>
<script src="script.js"></script>
</head>
<body>
<div id="main">
<center>
<div id="txt">
<?php
$pdo = new PDO("mysql:host=localhost;dbname=parametre", "root", "");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = 'SELECT * FROM video WHERE Titre LIKE "A%" ORDER BY Titre ASC';
$results = $pdo->query($sql);
foreach ($results as $row) {
echo "<img onclick='Vid(this.value)' value=".$row["ID"]." style='height:280px;width:185px;border-radius:8px;overflow:hidden' src='images/videos/".$row['jaq']."' /> ";
}
?>
</div>
</center>
</div>
</body>
</html>
script.php
Code : Tout sélectionner
<?php header("Content-Type: text/html; charset=UTF-8");
$q = intval($_GET['q']);
$con = mysqli_connect('localhost','root','');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,"parametre");
$sql="SELECT * FROM video WHERE ID = '".$q."'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result)) {
echo "<br/>";
echo '<font FACE="Arial, Helvetica, sans-serif" size="5">'. $row['Titre'].'</font><br/>';
echo "<br><iframe width='848' height='478' src='" . $row['Video'] . "'></iframe>";
}
mysqli_close($con);
?>
Merci d'avoir pris le temps de lire et de m'aider.
Bonsoir,
Je vous expose mon problème, avec la fonction onchange dans un menu déroulant tout fonctionne bien.
Le hic, je voudrais afficher des images avec Onclick et en cliquant dessus changer le contenu dans la <div id=txt"> (sans recharger la page) avec le contenu du fichier "script.php".
Seulement le contenu ne s'affiche pas. Après y a aussi un affichage par ordre alphabétique, je ne sais pas si cela gène la requête ?
script.js
[code]function Vid(str) {
if (str == "") {
document.getElementById("txt").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txt").innerHTML = this.responseText;
}
};
xmlhttp.open("GET","script.php?q="+str,true);
xmlhttp.send();
}
}[/code]
home.php
[code]<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style/home.css">
<title>Test</title>
<script src="script.js"></script>
</head>
<body>
<div id="main">
<center>
<div id="txt">
<?php
$pdo = new PDO("mysql:host=localhost;dbname=parametre", "root", "");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = 'SELECT * FROM video WHERE Titre LIKE "A%" ORDER BY Titre ASC';
$results = $pdo->query($sql);
foreach ($results as $row) {
echo "<img onclick='Vid(this.value)' value=".$row["ID"]." style='height:280px;width:185px;border-radius:8px;overflow:hidden' src='images/videos/".$row['jaq']."' /> ";
}
?>
</div>
</center>
</div>
</body>
</html>[/code]
script.php
[code]<?php header("Content-Type: text/html; charset=UTF-8");
$q = intval($_GET['q']);
$con = mysqli_connect('localhost','root','');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,"parametre");
$sql="SELECT * FROM video WHERE ID = '".$q."'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result)) {
echo "<br/>";
echo '<font FACE="Arial, Helvetica, sans-serif" size="5">'. $row['Titre'].'</font><br/>';
echo "<br><iframe width='848' height='478' src='" . $row['Video'] . "'></iframe>";
}
mysqli_close($con);
?>[/code]
Merci d'avoir pris le temps de lire et de m'aider.