BIO

Inscris le 28/01/2008 à 18:28
  • Nombre de sujets
    6
  • Nombre de messages
    15
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses dernières news

Aucune news

Ses derniers sujets sur les forums

forum
BIO
le 12/02/2009 à 20:27
Problème avec une recherche
j'ai le code suivant:
<?php

$host = 'localhost';
$pseudo = 'root';
$password = '';
$database = 'moteur_recherche';

$connection = mysql_connect($host,$pseudo,$password)
or die ('Erreur Connection'.mysql_error($conenction));
$select_db = mysql_select_db($database)
or die ('Base inexistante'.mysql_error($conenction));


$requete = htmlentities(mysql_real_escape_string($_POST['requete']));


if (!empty($requete))
{
$req = "SELECT * FROM site WHERE nom_site LIKE '%$requete%'";
$exec = mysql_query($req);
$nb_resultats = mysql_num_rows($exec);

if($nb_resultats != 0)
{
echo '<center>';
echo '
<form action="moteur_recherche2.php" method="Post">
<input type="text" name="requete" size="60px">
<input type="submit" value="Ok">
</form>';
echo '</center>';
echo '<font color="blue">Resultat de votre recherche </font><br/>
<font size="2px">'.$nb_resultats.'</font>';


if($nb_resultats > 1)
{
echo ' <font size="2px" color="red">resultats</font> ';
}
else
{
echo ' <font size="2px" color="red">resultats trouvé</font> ';
}



echo '<font size="2px">dans notre base de donnees :</font><br/><br/>';



while($donnees = mysql_fetch_array($exec))
{
?>

<?php

echo '<span>';
echo '<font size="2px">'.$donnees['adresse_site'].'</font><br/>';
echo '<font size="2px">'.$donnees['nom_site'].'</font><br/>';
echo '<font size="2px">'.$donnees['description_site'].'</font><br/>';
echo '</span>';
?>

<?php
} // fin de la boucle
?>


<?php
}


else
{
echo '<center>';
echo '
<form action="moteur_recherche2.php" method="Post">
<input type="text" name="requete" size="60px">
<input type="submit" value="Ok">
</form>';
echo '</center>';
echo '<h5>Pas de resultats</h3>';
echo '<pre>Nous n avons trouver aucun resultats pour votre requete
<font color="blue">' .$_POST['requete'].'</font></pre>';

}
mysql_close();
}

else

{


echo '<center>';
echo '
<form action="moteur_recherche2.php" method="Post">
<input type="text" name="requete" size="60px">
<input type="submit" value="Ok">
</form>';
echo '</center>';

}

?>

le problème est que lors de l'affichage de la page dans mon navigateur une erreur du type:
"Undefined index: requete in ..." est c'est avec la ligne
$requete = htmlentities(mysql_real_escape_string($_POST['requete']));
juste après la connexion à la base. et cette même erreur disparaisse après la première exécution
BIO
salut,
mon problème c'est que tous les caractères accentués écrites dans ma formulaire seront envoyer comme des caractères inconnus et bizarres dans ma base de donnée « é » j’ai beaucoup essayer mais pas de solution. j'ai essayé ça :
<input name="expediteur" type="text" value="<?php if (isset($_POST['expediteur'])) echo htmlentities(trim($_POST['expediteur']), ENT_QUOTES, 'UTF-8'); ?>" size="30">
mais pas de résultat...
BIO
le 08/09/2008 à 16:52
Pas de modification dans ma base
c'est ma page de modification mais la modification au niveau de la base de donnée ne se fait pas correctement et il y a quelque part une erreur que je ne le vois pas. quelqu'un peux m'aider...

<?php
if (isset($_POST['go']) && $_POST['go']=='Modifier le livre')
{
require('connect.php');

if (!isset($_POST['siecle'])|| !isset($_POST['cote']) || !isset($_POST['auteur'])|| !isset($_POST['titre'])|| !isset($_POST['critique'])|| !isset($_POST['maison_edition'])|| !isset($_POST['lieu_edition'])|| !isset($_POST['collection'])|| !isset($_POST['annee_edition'])|| !isset($_POST['nb_pages'])|| !isset($_POST['mots_cles'])) {
$erreur = 'Les variables nécessaires au script ne sont pas définies.';
}
else {
if (empty($_POST['siecle']) || empty($_POST['titre']) || empty($_POST['nb_pages'])) {
$erreur = 'Au moins un des champs est vide.';
}
else {
$sql = 'UPDATE livres SET siecle="'.$_POST['siecle'].'", genre="'.$_POST['genre'].'", cote="'.$_POST['cote'].'", auteur="'.$_POST['auteur'].'", titre="'.$_POST['titre'].'", critique="'.$_POST['critique'].'", maison_edition="'.$_POST['maison_edition'].'", lieu_edition="'.$_POST['lieu_edition'].'", collection="'.$_POST['collection'].'", annee_edition="'.$_POST['annee_edition'].'", nb_pages="'.$_POST['nb_pages'].'", mots_cles="'.$_POST['mots_cles'].'" WHERE id="'.$_GET['id_livre_a_modif'].'"';

mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

mysql_close();

header('Location:liste_livres.php');
exit();
}
}
}
?>
<html>
<head>
<title>Modifier un livre</title>


<?php
require 'connect.php';
$result = mysql_query ('SELECT * from livres WHERE id="'.$_GET['id_livre_a_modif'].'"');
while ($data = mysql_fetch_array ($result))
{ ?>
<form action="modif_livre.php" method="post">
<table>
<tr>
<td class="gras">Si&eacute;cle* : </td>
<td><select name="siecle" >
<option ><?php echo($data['siecle']); ?></option>
<option ></option>
<option value="Moyen Age" >M. Age</option>
<option value="XVI">XVI</option>
<option value="XVII">XVII</option>
<option value="XVIII">XVIII</option>
<option value="XIX">XIX</option>
<option value="XX">XX</option>
</select></td>
</tr>
<tr>
<td class="gras">Genre : </td>
<td><select name="genre" id="list_G" disabled>
<option><?php echo($data['genre']); ?></option>
<option ></option>
<option>&Eacute;POPEE</option>
<option>ROMAN</option>
<option>CHRONIQUES</option>
<option>CONTES</option>
<option>FABLIAUX</option>
<option>POESIE</option>
<option>THEATRE</option>
<option>DIVERS</option>
<option>CRITIQUES&nbsp;LITTERAIRES</option>
<option>CRITIQUES&nbsp;GENERALES</option>
<option>ANCIEN&nbsp;FRANCAIS</option>
</select>
</td>
</tr>
<tr>
<td class="gras">Cote :</td>
<td><input type="text" name="cote" maxlength="50" size="50" value="<?php echo($data['cote']); ?>"></td>
</tr>
<tr>
<td class="gras">Auteur :</td>
<td><input type="text" name="auteur" maxlength="50" size="50" value="<?php echo($data['auteur']); ?>"></td>
</tr>
<tr>
<td class="gras">Titre* :</td>
<td><textarea name="titre" cols="38" rows="4"><?php echo($data['titre']); ?></textarea></td>
</tr>
<tr>
<td class="gras">Critique :</td>
<td><input type="text" name="critique" maxlength="50" size="50" value="<?php echo($data['critique']); ?>"></td>
</tr>
<tr>
<td class="gras">Maison d&#8217;&eacute;dition : </td>
<td><input type="text" name="maison_edition" maxlength="50" size="50" value="<?php echo($data['maison_edition']); ?>"></td>
</tr>
<tr>
<td class="gras">Lieu d&#8217;&eacute;dition :</td>
<td><input type="text" name="lieu_edition" maxlength="50" size="50" value="<?php echo($data['lieu_edition']); ?>"></td>
</tr>
<tr>
<td class="gras">Collection :</td>
<td><input type="text" name="collection" maxlength="50" size="50" value="<?php echo($data['collection']); ?>"></td>
</tr>
<tr>
<td class="gras">Ann&eacute;e d&#8217;&eacute;dition :</td>
<td><input type="text" name="annee_edition" maxlength="4" size="50" value="<?php echo($data['annee_edition']); ?>" ></td>
</tr>
<tr>
<td class="gras">Nombre de pages* : </td>
<td><input type="text" name="nb_pages" maxlength="8" size="50" value="<?php echo($data['nb_pages']); ?>" ></td>
</tr>
<tr>
<td class="gras">Mots Cl&eacute;s :</td>
<td><textarea name="mots_cles" cols="38" rows="4"><?php echo($data['mots_cles']); ?></textarea></td>
</tr>
<tr>
<td>
<td align="right"><br><input type="submit" name="go" value="Modifier le livre"></td>
</tr>
</table>
</form>
<?php
}
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html>

Ses derniers messages sur les forums

forum
BIO
le 19/02/2009 à 14:49
Problème avec une recherche
merci beaucoup pour la réponse elle m'a vraiment aidé. j'ai essayé de raffiner un peu mon code et j'ai introduit un affichage de page par page que j'ai trouvé sur ce site mais le résultat de ma recherche s'affiche seulement sur une première page la deuxième s'affiche vide smiley
avez vous de solution...

recherche-livre.php
<?php
echo'<form action="catalogue-livre.php" method="Post" >
<table align="center" border="0" cellpadding="5" cellspacing="5">
<tr>
<td>Auteur :</td>
<td><input type="text" name="auteur" size="50"></td>
</tr>
<tr>
<td>Mot du titre :</td>
<td><input type="text" name="titre" size="50"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Chercher" name="go" class="SubmitBleu">Recherche avanc&eacute;e</td>
</tr>
</table>
</form>'
?>
<?php
require 'fonction_num.php';
require('connect.php');
if (isset($_POST['go']) && $_POST['go']=='Chercher')
{

($auteur = htmlentities(mysql_real_escape_string($_POST['auteur'])));
($titre = htmlentities(mysql_real_escape_string($_POST['titre'])));

$req = "SELECT count(*) FROM livres WHERE auteur LIKE '%$auteur%' AND titre LIKE '%$titre%'";

$resultat = mysql_query($req) ;

$nb_total = mysql_fetch_array($resultat);
if (($nb_total = $nb_total[0]) == 0)
{

echo 'Aucune réponse trouvée';

} else {

if (!empty($auteur)||!empty($titre))
{
if (!isset($_GET['debut'])) $_GET['debut'] = 0;
$nb_affichage_par_page = 2;

$req = "SELECT * FROM livres WHERE auteur LIKE '%$auteur%' AND titre LIKE '%$titre%' ORDER BY titre ASC LIMIT ".$_GET["debut"].",".$nb_affichage_par_page;
$exec = mysql_query($req);
$nb_resultats = mysql_num_rows($exec);

if($nb_resultats != 0)
{

echo '<span class="Bleu">R&eacute;sultat de votre recherche : ';
if($auteur) echo 'Auteur &laquo; '.$_POST['auteur'].' &raquo;';
if($titre) echo ' Titre &laquo; '.$_POST['titre'].' &raquo;';
echo '</span><br/>'.$nb_total;


if($nb_resultats > 1)
{
echo ' <span class="Vert">r&eacute;sultats trouv&eacute;s</span> ';
}
else
{
echo ' <span class="Vert">r&eacute;sultat trouv&eacute;</span> ';
}
echo 'dans notre biblioth&egrave;que des livres :<br/><br/>';

while($donnees = mysql_fetch_array($exec))
{
?>

<?php

echo '<span>';
echo 'Siécle : '.$donnees['siecle'].'<br/>';
if($donnees['genre']) echo ' Genre : '.$donnees['genre'].'<br/>';
if($donnees['cote']) echo ' Cote : '.$donnees['cote'].'<br/>';
if ($donnees['auteur']) echo 'Auteur : '.$donnees['auteur'].'<br/>';
echo 'Titre : '.$donnees['titre'].'<br/>';
if($donnees['critique']) echo ' Critique : '.$donnees['critique'].'<br/>';
if($donnees['maison_edition']) echo 'Maison d&acute;édition : '.$donnees['maison_edition'].'<br/>';
if($donnees['lieu_edition']) echo 'Lieu d&acute;édition : '.$donnees['lieu_edition'].'<br/>';
if($donnees['collection']) echo 'Collection : '.$donnees['collection'].'<br/>';
if($donnees['annee_edition']) echo 'Année d&acute;édition : '.$donnees['annee_edition'].'<br/>';
echo 'Nombre de page : '.$donnees['nb_pages'].'<br/>';
if($donnees['mots_cles']) echo 'Mots Clés : '.$donnees['mots_cles'].'<br/>';
echo'<hr>';
echo '</span>';
?>

<?php
} // fin de la boucle
?>

<?php }



else
{
echo '<h5>Pas de resultats</h3>';
echo '<pre>Nous n&acute;avons trouver aucun livre avec le mot :
<span class="Vert">&laquo; '.$_POST['auteur'].' &raquo;</span></pre>';
}
echo '<span class="gras">'.barre_navigation($nb_total, $nb_affichage_par_page, $_GET['debut'], 3).'</span>';
}
mysql_close();
}
}
?>


fonction_num.php
<?php

function barre_navigation ($nb_total,
$nb_affichage_par_page,
$debut,
$nb_liens_dans_la_barre) {

$barre = '';

// on recherche l'URL courante munie de ses paramètre auxquels on ajoute le paramètre 'debut' qui jouera le role du premier élément de notre LIMIT
if ($_SERVER['QUERY_STRING'] == "") {
$query = $_SERVER['PHP_SELF'].'?debut=';
}
else {
$tableau = explode ("debut=", $_SERVER['QUERY_STRING']);
$nb_element = count ($tableau);
if ($nb_element == 1) {
$query = $_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'].'&debut=';
}
else {
if ($tableau[0] == "") {
$query = $_SERVER['PHP_SELF'].'?debut=';
}
else {
$query = $_SERVER['PHP_SELF'].'?'.$tableau[0].'debut=';
}
}
}

// on calcul le numéro de la page active
$page_active = floor(($debut/$nb_affichage_par_page)+1);
// on calcul le nombre de pages total que va prendre notre affichage
$nb_pages_total = ceil($nb_total/$nb_affichage_par_page);

// on calcul le premier numero de la barre qui va s'afficher, ainsi que le dernier ($cpt_deb et $cpt_fin)
// exemple : 2 3 4 5 6 7 8 9 10 11 << $cpt_deb = 2 et $cpt_fin = 11
if ($nb_liens_dans_la_barre%2==0) {
$cpt_deb1 = $page_active - ($nb_liens_dans_la_barre/2)+1;
$cpt_fin1 = $page_active + ($nb_liens_dans_la_barre/2);
}
else {
$cpt_deb1 = $page_active - floor(($nb_liens_dans_la_barre/2));
$cpt_fin1 = $page_active + floor(($nb_liens_dans_la_barre/2));
}

if ($cpt_deb1 <= 1) {
$cpt_deb = 1;
$cpt_fin = $nb_liens_dans_la_barre;
}
elseif ($cpt_deb1>1 && $cpt_fin1<$nb_pages_total) {
$cpt_deb = $cpt_deb1;
$cpt_fin = $cpt_fin1;
}
else {
$cpt_deb = ($nb_pages_total-$nb_liens_dans_la_barre)+1;
$cpt_fin = $nb_pages_total;
}

if ($nb_pages_total <= $nb_liens_dans_la_barre) {
$cpt_deb=1;
$cpt_fin=$nb_pages_total;
}

// si le premier numéro qui s'affiche est différent de 1, on affiche << qui sera un lien vers la premiere page
if ($cpt_deb != 1) {
$cible = $query.(0);
$lien = '<A HREF="'.$cible.'">&lt;&lt;</A>&nbsp;&nbsp;';
}
else {
$lien='';
}
$barre .= $lien;

// on affiche tous les liens de notre barre, tout en vérifiant de ne pas mettre de lien pour la page active
for ($cpt = $cpt_deb; $cpt <= $cpt_fin; $cpt++) {
if ($cpt == $page_active) {
if ($cpt == $nb_pages_total) {
$barre .= $cpt;
}
else {
$barre .= $cpt.'&nbsp;-&nbsp;';
}
}
else {
if ($cpt == $cpt_fin) {
$barre .= "<A HREF='".$query.(($cpt-1)*$nb_affichage_par_page);
$barre .= "'>".$cpt."</A>";
}
else {

$barre .= "<A HREF='".$query.(($cpt-1)*$nb_affichage_par_page);
$barre .= "'>".$cpt."</A>&nbsp;-&nbsp;";
}
}
}

$fin = ($nb_total - ($nb_total % $nb_affichage_par_page));
if (($nb_total % $nb_affichage_par_page) == 0) {
$fin = $fin - $nb_affichage_par_page;
}

// si $cpt_fin ne vaut pas la dernière page de la barre de navigation, on affiche un >> qui sera un lien vers la dernière page de navigation
if ($cpt_fin != $nb_pages_total) {
$cible = $query.$fin;
$lien = '&nbsp;&nbsp;<A HREF="'.$cible.'">&gt;&gt;</A>';
}
else {
$lien='';
}
$barre .= $lien;

return $barre;
}
?>
BIO
le 12/02/2009 à 20:27
Problème avec une recherche
j'ai le code suivant:
<?php

$host = 'localhost';
$pseudo = 'root';
$password = '';
$database = 'moteur_recherche';

$connection = mysql_connect($host,$pseudo,$password)
or die ('Erreur Connection'.mysql_error($conenction));
$select_db = mysql_select_db($database)
or die ('Base inexistante'.mysql_error($conenction));


$requete = htmlentities(mysql_real_escape_string($_POST['requete']));


if (!empty($requete))
{
$req = "SELECT * FROM site WHERE nom_site LIKE '%$requete%'";
$exec = mysql_query($req);
$nb_resultats = mysql_num_rows($exec);

if($nb_resultats != 0)
{
echo '<center>';
echo '
<form action="moteur_recherche2.php" method="Post">
<input type="text" name="requete" size="60px">
<input type="submit" value="Ok">
</form>';
echo '</center>';
echo '<font color="blue">Resultat de votre recherche </font><br/>
<font size="2px">'.$nb_resultats.'</font>';


if($nb_resultats > 1)
{
echo ' <font size="2px" color="red">resultats</font> ';
}
else
{
echo ' <font size="2px" color="red">resultats trouvé</font> ';
}



echo '<font size="2px">dans notre base de donnees :</font><br/><br/>';



while($donnees = mysql_fetch_array($exec))
{
?>

<?php

echo '<span>';
echo '<font size="2px">'.$donnees['adresse_site'].'</font><br/>';
echo '<font size="2px">'.$donnees['nom_site'].'</font><br/>';
echo '<font size="2px">'.$donnees['description_site'].'</font><br/>';
echo '</span>';
?>

<?php
} // fin de la boucle
?>


<?php
}


else
{
echo '<center>';
echo '
<form action="moteur_recherche2.php" method="Post">
<input type="text" name="requete" size="60px">
<input type="submit" value="Ok">
</form>';
echo '</center>';
echo '<h5>Pas de resultats</h3>';
echo '<pre>Nous n avons trouver aucun resultats pour votre requete
<font color="blue">' .$_POST['requete'].'</font></pre>';

}
mysql_close();
}

else

{


echo '<center>';
echo '
<form action="moteur_recherche2.php" method="Post">
<input type="text" name="requete" size="60px">
<input type="submit" value="Ok">
</form>';
echo '</center>';

}

?>

le problème est que lors de l'affichage de la page dans mon navigateur une erreur du type:
"Undefined index: requete in ..." est c'est avec la ligne
$requete = htmlentities(mysql_real_escape_string($_POST['requete']));
juste après la connexion à la base. et cette même erreur disparaisse après la première exécution
BIO
Bonjour,
mon problème n'est pas résolu car ma BD est en UTF-8 mes pages et mon navigateur aussi, je crois que le problème ce n'est pas avec le codage des pages mais plutôt avec ma requête 'insert'.
$sql = 'INSERT INTO message VALUES("", "'.mysql_escape_string($_POST['email']).'", "'.mysql_escape_string($_POST['expediteur']).'", "'.mysql_escape_string($_POST['message']).'", "'.date("Y-m-d H:i:s").'")';

vraiment j'ai pas trouvé de solution même la fonction 'encode' ne fait rien

Ses derniers commentaires de news

Aucun commentaire de news

Ses derniers commentaires de sites

Aucun commentaire de sites

Ses derniers commentaires de wall

Aucun commentaire wall
LoadingChargement en cours