Pb php-mysql
moez
-
tafiscobar Messages postés 1281 Statut Contributeur -
tafiscobar Messages postés 1281 Statut Contributeur -
Bonjour
j'ai ecirt un script qui fait la recherche ds une table('search') puis il cree une autre tale search1 et il stocke les resultat dans cette derniere
voici mon script:
<?
$db=mysql_connect('localhost','root','') or die("erreur de connection");
mysql_select_db('cifodedb',$db) or die("erreur de connexion");
$creation="create table search1(titre varchar(255) not null,mot_cle varchar(255) not null,url varchar(255) not null,description varchar(255) not null);";
$create=mysql_query($creation);
$recherche=strtolower($recherche);
$recherche=ereg_replace("é","e",$recherche);
$recherche=ereg_replace("è","e",$recherche);
$recherche=ereg_replace("à","a",$recherche);
$recherche=ereg_replace("ç","c",$recherche);
$mots=str_replace("+"," ",trim($recherche));
//$mots=str_replace("/"," ",$mots);//dernier ajout si l'utilisateur entre mot1/mot2 exemple C/C++
$mots=str_replace(","," ",$mots);
//$mots=str_replace(":"," ",$mots);
$mots=str_replace(","," ",$mots);
$mots=str_replace(";"," ",$mots);
$tab=explode(" ",$mots);
$nb=count($tab);
$sql="select * from search where mot_cle like '%$tab[0]%' ";
//on boucle pour integrer tous les mots ds la requete
for($i=1;$i<$nb;$i++)
{
$sql .="and mot_cle like '%$tab[$i]%' ";
}
$resultat = mysql_query($sql);
$insertion="insert into search1 values('$row[titre]','$row[mot_cle]','$row[url]','$row[description]');";
while($row=mysql_fetch_array($resultat)){
mysql_query($insertion);
}
echo $insertion;
?>
ça retourne :
insert into search1 values('','','','');
c bizarre !!
merci
j'ai ecirt un script qui fait la recherche ds une table('search') puis il cree une autre tale search1 et il stocke les resultat dans cette derniere
voici mon script:
<?
$db=mysql_connect('localhost','root','') or die("erreur de connection");
mysql_select_db('cifodedb',$db) or die("erreur de connexion");
$creation="create table search1(titre varchar(255) not null,mot_cle varchar(255) not null,url varchar(255) not null,description varchar(255) not null);";
$create=mysql_query($creation);
$recherche=strtolower($recherche);
$recherche=ereg_replace("é","e",$recherche);
$recherche=ereg_replace("è","e",$recherche);
$recherche=ereg_replace("à","a",$recherche);
$recherche=ereg_replace("ç","c",$recherche);
$mots=str_replace("+"," ",trim($recherche));
//$mots=str_replace("/"," ",$mots);//dernier ajout si l'utilisateur entre mot1/mot2 exemple C/C++
$mots=str_replace(","," ",$mots);
//$mots=str_replace(":"," ",$mots);
$mots=str_replace(","," ",$mots);
$mots=str_replace(";"," ",$mots);
$tab=explode(" ",$mots);
$nb=count($tab);
$sql="select * from search where mot_cle like '%$tab[0]%' ";
//on boucle pour integrer tous les mots ds la requete
for($i=1;$i<$nb;$i++)
{
$sql .="and mot_cle like '%$tab[$i]%' ";
}
$resultat = mysql_query($sql);
$insertion="insert into search1 values('$row[titre]','$row[mot_cle]','$row[url]','$row[description]');";
while($row=mysql_fetch_array($resultat)){
mysql_query($insertion);
}
echo $insertion;
?>
ça retourne :
insert into search1 values('','','','');
c bizarre !!
merci
A voir également:
- Pb php-mysql
- Easy php - Télécharger - Divers Web & Internet
- Mysql community download - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php ✓ - Forum PHP
- Retour à la ligne php ✓ - Forum PHP
2 réponses
Salut,
C'est normal,
Regarde ce que tu as fait avec ta variable $row !!!
Tu initialises $insertion avec $row avant d'avoir initialisé $row...
Donc $insertion contient : "insert into search1 values('','','','')"
Sur l'échiquier de la vie, j'ai choisi d'être le Fou,
parce que je ne suis pas Cavalier. Xadrez
C'est normal,
Regarde ce que tu as fait avec ta variable $row !!!
Tu initialises $insertion avec $row avant d'avoir initialisé $row...
Donc $insertion contient : "insert into search1 values('','','','')"
Sur l'échiquier de la vie, j'ai choisi d'être le Fou,
parce que je ne suis pas Cavalier. Xadrez
moi, j'ai lhabitude de faire ceci, plus simple et plus pratique que le mysql-fetch-array :
while($row=mysql-fetch-row($resultats){
mysql_query("insert into search1 values(`$row[0]',`$row[1]',`$row[2]',`$row[3]')");w
}
//la, j'etais sur que cela prenait un a un les lignes et qu'il est insere ds mon autre table.Tu p aussi pourqoi pas , utiliser a la place de mysql_query, mysql_db_query.
tafiscobar
while($row=mysql-fetch-row($resultats){
mysql_query("insert into search1 values(`$row[0]',`$row[1]',`$row[2]',`$row[3]')");w
}
//la, j'etais sur que cela prenait un a un les lignes et qu'il est insere ds mon autre table.Tu p aussi pourqoi pas , utiliser a la place de mysql_query, mysql_db_query.
tafiscobar
while($row=mysql_fetch_array($resultat)){
$insertion=\"insert into search1 values(\'$row[titre]\',\'$row[mot_cle]\',\'$row[url]\',\'$row[description]\');\";
mysql_query($insertion);
}