Peacock

  • Nombre de sujets
    25
  • Nombre de messages
    100
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

Peacock
le 23/02/2005 à 15:26
pb : adaptation moteur
Salut Zebden,

Si je met partout mysql_query($sql) et en amont un :
mysql_select_db ($base);

Ben, j'ai les trois warnings,

[/b]
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/base/html/pages/produits.php on line 208

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/base/html/pages/produits.php on line 211

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home/base/html/pages/produits.php on line 226[/b]


qui apparaissent toujours
pour une recherche sur plus d'un mot.

a+,
merci d'avance,
Peacock
Peacock
le 23/02/2005 à 12:34
Pop-up retour premier plan
Cela m'étonne avec les, apparemment, furieux aux yeux rouges qui collaborent à ce site que ça ne soit pas corrigé... De quoi ?
Les pop up BBcode et Smilies une fois ouverte restent en arrière plan lorsqu'on clique de nouveau sur le lien.
La solution que, claro que si, je n'ai pas inventé, popup.focus :
<?php
echo " <script language=\"JavaScript\">
<!--
function fiche(ID)
{
popup = window.open('fiche_films.php?id_film='+ID,'fiche','toolbar=0,
location=0,directories=0,menuBar=0,
resizable=0,scrollbars=yes,width=400,
height=585,left=5,top=5');
popup.focus();
}
//-->
</script>";
?>


Bien à vous. Autrement la clarté de ce site, la sobriété me plais toujours autant.

Note de zebden : un peu d'espace hein , le if inutile pour remettre le popup au premier plan
Peacock
le 23/02/2005 à 12:19
pb : adaptation moteur
Bonjour à tous,

Y avait longtemps, au moins depuis 2004...
Le pb qui m'amène et une erreur de syntaxe sur une adaptation du moteur utilisé dans Daforum...

Dans mon cas je veux que la recherche se fasse sur deux champs... Tout roule pour un seul mot entré dans le champs de recherche, dés que je rentre deux mots l'erreur suivante MySQL suivante se pointe :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/base/html/pages/produits.php on line 208

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/base/html/pages/produits.php on line 211

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home/base/html/pages/produits.php on line 226


Dans l'adaptation, je ne fais pas appelle au fichier config.php comme dans le script du moteur de Daforum, mais juste un fichier php include qui donne les paramètres sous la forme classique :

<?
$phputilisateur="dsq357";
$phpmotdepasse="123456";
$host="localhost";
$base="dsq357";

?>

Quant au code,la partie où ça se joue, le voici :

<?php	if( !empty($submit_recherche) ) 
{
if( !empty($recherche) )
{
$recherche=ereg_replace("[ ]{2,}", " ", $_GET['recherche']);
$tablo_recherche = explode (" ", $recherche);
$nb_element_recherche = count ($tablo_recherche);

if ($_GET['type_search'] == 'et') {
$operateur = 'AND';
}
else {
$operateur = 'OR';
}

$nb_affichage_par_page = 10;

$sql = 'SELECT DISTINCT * FROM prod_tbl WHERE (';
for($i = 0; $i < $nb_element_recherche; $i++) {
if ($i == 0) {
if ($i == ($nb_element_recherche-1)) {
$sql .= ' prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%")';
}
else {
$sql .= 'prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%")';
}
}
elseif ($i == ($nb_element_recherche-1)) {
$sql .= ' '.$operateur.' (prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%")';
}
else {
$sql .= ' '.$operateur.' (prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%")';
}
}
$sql .= ' ORDER BY prod_tbl.Titre DESC';

$resultat = mysql_db_query($base, $sql, $id_lien) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$enr = mysql_num_rows($resultat);

$nbtotal = $enr;

if ($nbtotal == 0) {
$resultats_obtenus = "<i>Aucune réponse trouvée...</i>";
}
else {
if (!isset($_GET['debut'])) $_GET['debut'] = 0;

$sql = 'SELECT DISTINCT * FROM prod_tbl WHERE (';
for($i = 0; $i < $nb_element_recherche; $i++) {
if ($i == 0) {
if ($i == ($nb_element_recherche-1)) {
$sql .= ' prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%")';
}
else {
$sql .= ' prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%")';
}
}
elseif ($i == ($nb_element_recherche-1)) {
$sql .= ' '.$operateur.' (prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%"))';
}
else {
$sql .= ' '.$operateur.' (prod_tbl.Texte LIKE "%'.$tablo_recherche[$i].'%" OR prod_tbl.Titre LIKE "%'.$tablo_recherche[$i].'%"))';
}
}
$sql .= ' ORDER BY prod_tbl.Titre ASC LIMIT '.$_GET['debut'].','.$nb_affichage_par_page;

$resultat = mysql_query($sql);
$nbenr = mysql_num_rows($resultat);

$resultats_obtenus = "";
while ($enr = mysql_fetch_array($resultat))
{
$Num = $enr['Num'];
$Titre = $enr['Titre'];
$Rea = $enr['Rea'];


$resultats_obtenus .='<SPAN class="antracite10-B"><A HREF="javascript:fiche('.$Num.')">' .$Titre.' &nbsp; </SPAN>
<SPAN class="noir10-B">'.$Rea.'</SPAN></a><br><br>';

}
mysql_free_result($resultat);
include ('../forum/includes/functions.php');
$barre_nav = barre_navigation($nbtotal, $nb_affichage_par_page, $_GET['debut'], '5');
}
}
?>
Peacock
le 16/11/2004 à 13:50
Affichage ORDER BY
Salut à tous,
Voila, pour ordonner les résultat suivant un champs
on fait ça :
$requete="SELECT Nom, Nom_Ang FROM gars_tbl WHERE id_gars='$numero' ORDER BY Nom_Ang";

MAis supposons, mo cas, où
je suis sur la page v. anglaise
et où j'affiche les Noms anglais Nom_Ang, si ils ont été renseigné, sans quoi, j'affiche les nom français Nom.
Y a-til un moyens pour "recouper" les résultats et que l'affichage, mélange d'anglais et de français s'ordonne par ordre alphabétique tout de même ??
Merci
Peacock
le 07/11/2004 à 19:18
PB télechargement Image
Merci Yumi ,
Clic droit sur le dossier et cocher les
bonnes cases,
Merci à toi et à Moogli aussi,

J'ai découvert un nouveau truc,
je me couche moins con !
a+
Peacock
le 07/11/2004 à 18:56
PB télechargement Image
Bon, moi je veux bien
mon client FTP c'est Filezilla,
mais on est d'accord c'est pas via FTP
le blème, mais par l'interface... Désolé smiley
Peacock
le 07/11/2004 à 18:48
PB télechargement Image
Non Yumi, parce que chmod
je viens juste d'en entendre parler,
si tu pouvais préciser ce que cela permet,
merci d'avance...
Peacock
le 07/11/2004 à 18:41
PB télechargement Image
Je précise, il y avait un site de gestion
avec la possibilité de télécharger des images,
de quelle manière... je ne sais pas...
Peacock
le 07/11/2004 à 18:39
PB télechargement Image
Non,
parce qu'il existait déjà un site
avec possibilité de le
faire et c'est la même formule d'hébergement...
Quant à chmod je n'ai pas tout compris...

Merci au prochain.
Peacock
le 07/11/2004 à 18:17
PB télechargement Image
Bonsoir à tous,

En phase de tranfert d'un site finalisé, un blème surgit sur le nouvel hébergeur (different de l'hébergeur ou j'effectue mes test et ou tout marche), il s'agit de la partie téléchargement d'une image lors d'une nouvel entrée de fiche dans la base :

La partie du script où l'internaute va chercher l'image à télécharger :

<? echo "<FORM enctype=multipart/form-data  METHOD='POST' ACTION='ajouter_image.php'>";
$Titre_Bis=$Titre;
echo "<input type=hidden name=MAX_FILE_SIZE value='100000' >";
echo "<input type=file name='monfichier' ><br>
<input type='hidden' name='Titre_Bis' value=\"".$Titre_Bis."\">";
echo "<input type='submit' name='image_submit' value='Envoyer' >"; echo"</FORM>";
?>


Et la partie dans le fichier de réception ajouter_image.php:

(Le code posté par ce membre étant trop long, il a été automatiquement inséré dans le wall. Pour le voir, veuiller clicker sur [lien=http://www.lephpfacile.com/wall/lire_wall.php?wall=1821]ce lien[/lien])

Donc, tout va bien chez mon hébergeur et sur le nouveau j'ai droit à ce message :

Warning: copy(../images/photos/troisfois.jpg): failed to open stream: Permission denied in /home/xxxxxxx/html/gestion/ajouter_image.php on line 195

Et ligne 195, c'est celle-ci (ou du moins elle est contenue la dedans, plus exactement sur mon éditeur c'est ça $repertoireDestination.$nomDestination) :

if (copy($_FILES["monfichier"]["tmp_name"], 
$repertoireDestination.$nomDestination)) {

//enregistrement dans la base
$sql= "UPDATE `prod_tbl` SET `image_name` = '$nomDestination' , `img_chemin` = '$repertoireDestination' WHERE `Num` = '$Num' ";
mysql_db_query ($base , $sql , $id_lien) OR DIE ('Erreur :'.mysql_error());
}


C'est quoi le blème, le répertoire photo existe bel et bien, il est bien dans le dossier images.

Merci d'avance vous m'enlèverez une grosse épine du pied (dit-il, pris de panique...)
LoadingChargement en cours