|
oim 1453
| Posté : 16-06-2004 06:06
Slt, avec ca j'arrive à afficher le contenu d'un article : texte + image :
$result = mysql_query("select content from seccont where secid='6'");
comment je peux faire pour qu'il me prenne que l'image jpg qui se trouve dans content ?
Merci ! |  Profil www
|
|
Tribal-Dolphin 4374
| |
oim 1453
| Posté : 18-06-2004 23:08
Il ne marche pas ce code. |  Profil www
|
|
Selenn 741
| Posté : 18-06-2004 23:18
ca a le mérite d'être clair |  Profil
|
|
oim 1453
| Posté : 18-06-2004 23:21
Je sens de l'ironie Selenn...
En fait c'est ligne qui pose problème : preg_match_all("/b([^s]+)s*=s*("|')(.*?)("|')s/", " $image ",
Et la je renonce. |  Profil www
|
|
Tribal-Dolphin 4374
| |
Tito 7758
| Posté : 19-06-2004 19:21
J'ai regardé et j'y suis pas arrivé |  Profil E-mail www
|
|
oim 1453
| Posté : 19-06-2004 23:15
Slt tribal, c'est dans quel fichier, je l'ai pas trouvé dans ton module.
Merci ! |  Profil www
|
|
Tribal-Dolphin 4374
| Posté : 21-06-2004 09:15
admin/ecarte.php et je te poste le bout de code. Ce code évite de passer par le fonction ci dessus, donc moins de chances d'erreur !
<?
$origin_filename = trim($upload->getFileName("newcard".$i));
$ext = strtolower(s ubstr(strrchr($origin_filename, "."),1));
$num = mysql_fetch_ row(mysql_query("SELECT LAST_INSERT_ID()"));
$field1_filename = $num[0].".".$ext;
$FileTemp = $upload ->getTempFile("newcard".$i);
list($TempWidth, $TempHe ight, $MimeType, $attr) = getimagesize("$FileTemp");
  ;
if ($MimeType ==&nb sp;"1" || $MimeType == "2" || $MimeType == "3" || $MimeType == "6") {
............................
?>
|  Profil
|
|
Selenn 741
| |
oim 1453
| Posté : 25-09-2004 23:31
Citation : Tribal-Dolphin
Citation : oim
Il ne marche pas ce code.
Je dirais plutôt que tu ne sais pas t'en servir car ils en en service sur mon module E-Carte et ça fonctionne au poil.
Comment fait tu appel à cette fonction ?
Je n'arrive pas a comprendre ton script sur ecarte et surtout je ne vois pas ou tu extrais l'image, et le script de nexen bloc sur une ligne qui met envoyé en erreur et l'appel le je le fait avec $content.
  ; $image2 = preg_replace("/b([^s]+)s*=s*("|')([s]*?)("|')s/", "", " $image ");
OpenTable();
echo "<TABLE WIDTH=100% CELLSPACING=2 CELLPADDING=2 BORDER=0><TR><TD CLASS=\"HEADER\">\n";
$result=mysql_query("select content from seccont where secid='10' ");
list($content) = mysql_fetch_row($result);
echo "<tr><TD CLASS=\"HEADER\">$content</td></tr>";
echo "</TD></TR></TABLE>\n";
CloseTable();
|  Profil www
|
|
Tribal-Dolphin 4374
| Posté : 27-09-2004 10:06
Voici comment faire :
tu ajoute cette fonction au sommet du fichier
function img_extractor_string($chaine){
$retour = array();
while($x = stristr($chaine, "<img")){
$image = substr($x, 4, strpos($x, ">")-4);
#print "n";
$chaine = substr($x, strpos($x, ">"));
preg_match_all("/b([^s]+)s*=s*("|')(.*?)("|')s/", " $image ",
$attribut);
$details = arrays2hash($attribut[1], $attribut[3]);
$details['tag'] = $image;
$image2 = preg_replace("/b([^s]+)s*=s*("|')([s]*?)("|')s/", "",
" $image ");
preg_match_all("/b([^s]+)s*=s*([^s]*?)s/", " $image2 ",
$attribut);
// l'ordre du merge est important : on ecrase les valeurs
trouvees sans guillemets
// par celle trouvee avec.
$details = array_merge( arrays2hash($attribut[1], $attribut[2]),
$details);
array_push($retour, $details);
}
return $retour;
}
Ensuite, tu appelle la fonction en envoyant la chaine ou chercher l'image
$imgs = img_extractor_string($content);
En enfin, pour voir le résultat :
print_r($imgs);
Ensuite, tu définis l'image que tu as besoin selon le résultat. |  Profil
|
|
oim 1453
| Posté : 27-09-2004 10:37
Comme ca c pas bon, c quoi qui ne vas pas ?
<?PHP
if(!isset($mainfile)) { !include!("mainfile.php"); }
global $pdst; $pdst="1";
!include!("header.php");
function img_extractor_string($chaine){
$retour = array();
while($x = stristr($chaine, "<img")){
$image = substr($x, 4, strpos($x, ">")-4);
#print "n";
$chaine = substr($x, strpos($x, ">"));
preg_match_all("/b([^s]+)s*=s*("|')(.*?)("|')s/", " $image ", $attribut);
$details = arrays2hash($attribut[1], $attribut[3]);
$details['tag'] = $image;
$image2 = preg_replace("/b([^s]+)s*=s*("|')([s]*?)("|')s/", "", " $image ");
preg_match_all("/b([^s]+)s*=s*([^s]*?)s/", " $image2 ", $attribut);
// l'ordre du merge est important : on ecrase les valeurs
trouvees sans guillemets
// par celle trouvee avec.
$details = array_merge( arrays2hash($attribut[1], $attribut[2]), $details);
array_push($retour, $details);
}
return $retour;
}
OpenTable();
echo "<TABLE WIDTH=100% CELLSPACING=2 CELLPADDING=2 BORDER=0><TR><TD CLASS=\"HEADER\">\n";
$result=mysql_query("select content from seccont where seci d='10' ");
list($content) = mysql_fetch_row($result);
$imgs = img_extractor_string($content)
echo "<tr><TD CLASS=\"HEADER\">print_r($imgs);</td></tr>";
echo "</TD></TR></TABLE>\n";
CloseTable();
!include!("footer.php");
?>
|  Profil www
|
|
Tribal-Dolphin 4374
| |
oim 1453
| Posté : 27-09-2004 12:16
Je veux simplement afficher l'image sans le texte du content. La finalité mettre sur mon index l'image avec un lien qui envoie à l'article mais cette ligne m'est retourne en erreur
preg_match_all("/b([^s]+)s*=s*("|')(.*?)("|')s/", " $image ", $attribut);
Parse error: parse error, unexpected T_STRING in c:\......php on line 18
|  Profil www
|
|
Aller à la page : [ 1 | 2 ] |