Jump to content
WebFrance
  • Rejoignez WebFrance

    Inscrivez vous aujourd'hui et recevez le Guide gratuit du e-Business

     

afficher les images Dreamstore (php)


spacemarmotte
 Share

Recommended Posts

Bonjour à tous,

je débute en php et je bute sur un problème... comment afficher les images "distantes" ?

aucun pb pour afficher des images qui sont sur mon serveur mais impossible avec celles chez DS !

Voici le morceau de code:

[hide]

<?php echo $donnees['pname']; ?> <br />

<?php echo '<img src="$donnees[img_min]"./>'; ?> <br />

<?php echo $donnees['desc']; ?>

[/hide]

Le champ img_min contient bien l'url complète de l'image !

si l'un d'entre vous sait me mettre le doigt sur l'erreur... ;-)

Merci

Eric

Link to comment
Share on other sites
Partagez cette page :

>> Nouveau : Découvrez la marketplace d'Achat / Vente de Sites !

en fait, la variante de trimegistre n'a pas de grande différence

à l'exception près qu'il à viré la concaténation que tu as fait et mal placée ( et ma au lieux de la finaliser tout simplement. )

<?php echo '<img src="$donnees[img_min]"./>'; ?> <br />

deviens

<?php echo '<img src="'. $donnees[img_min] .'" alt="" />'; ?> <br />

tu vois, quand tu veux ajouter ta variable, il faut l'entourer du . et surtout du simple ou double guillement ( dépends de comment tu as ouvert le echo ) ( '. $variable .' )

en revanche, si tu utilises les "" tu peux alors afficher une variable, en dur dans le texte, sans devoir faire de concaténation. En revanche, tu devras backslasher tes guillemets. ( title=\"$titre\")

chears

Edited by HimSelf
Link to comment
Share on other sites
Partagez cette page :

et donc maintenant tu peux faire :

<?php  

     echo $donnees['pname'] . '<br />'."\n".

           '<img src="'.$donnees[img_min].'" alt="" /><br />'."\n".

           '<p>'.$donnees['desc'].'</p>'."\n";

?>

( les \n c'est pour faire les retour à la ligne dans le code source ;) )

Link to comment
Share on other sites
Partagez cette page :

Je suis parti du principe que si je copier-collait des bouts de code sans comprendre, je n'irai pas bien loin !

.. mais c'est quand même une P*** de gymnastique intellectuelle pour un grand débutant !

J'avance (petits) pas par (petits) pas !!

là, je cherche comment afficher les résultats d'une requête sur plusieurs colonnes !! (je cherche aussi un tuto... vraiment simple !!)

Eric

Edited by spacemarmotte
Link to comment
Share on other sites
Partagez cette page :

qu'appelles tu plusieurs colonnes ?

comme ceci : http://www.himselfprod.com/les-amis/ ?

<?php

                         echo '<table width="100%"><tr height="200px"><td width="50%">'."\n";

                         $query = db_query("SELECT * FROM amis WHERE active='1' ORDER BY titre ASC");

                              $nbreponse = mysql_num_rows($query);

                              $nbrcol = 2; 

                              $tier = ceil($nbreponse/$nbrcol);

                              while ($data = mysql_fetch_array($query)) {

                                   $titre[] = $data["titre"];

                                   $descr[] = $data["short"];

                                   $url[] = $data["url"];

                              }

                              for ($i=0; $i<$nbreponse ;  $i++) {

                                   if($i == $tier) {

                                        echo "</td>"."\n"."<td>";$tier=$tier*2;

                                   }

                                   echo '<b>'.$titre[$i].'</b> : '.$descr[$i].'<br />'."\n".

                                         '<p align="right"><a href="'.$url[$i].'" title="'.$titre['$i'].'" target="_blank">'.$url[$i].'</a></p>'."\n";

                              }

                         echo "</td></tr></table>";

                    ?>

Chears

Link to comment
Share on other sites
Partagez cette page :

normalement, y'à juste à changer la valeur de $nbrcol = 2; pour le nombre de colonnes :)

tu peux donc également le remplacer par une variable, pour afficher au choix selon le client,

ou selon la taille de son écran.

Edited by HimSelf
Link to comment
Share on other sites
Partagez cette page :

Au passage le plus simple pour pas s'embêter avec des boucles imbriquées qui créaient des colonnes etc. c'est d'utiliser le HTML tout simplement, comme sur nos boutiques LOL :

Chaque produit est contenu dans un DIV avec l'attribut de style "float:left;" et une largeur fixe, la totalité des produits contenu dans un div "conteneur" avec une largeur fixe et c'est parti ! On peut même faire ca avec des pourcentage et ca s'adaptera alors à la largeur de l'écran.... ABE

Link to comment
Share on other sites
Partagez cette page :

tu peux donc également le remplacer par une variable, pour afficher au choix selon le client,

ou selon la taille de son écran.

Pour ça.... je verrai plus tard !! lol

Un grand merci Himself ;-)

@ Adrien... J'ai essayé mais les résultats de recherches s'empilent en hauteur et ne "s'étalent" pas en largeur.

(sauf si j'affiche des requêtes différentes)

Eric

Edited by spacemarmotte
Link to comment
Share on other sites
Partagez cette page :

pour la version adrien :

il faut un width maximum

pour envoyer à la ligne.

de plus il faut un "position:relative;" pour qu'il s'emboitent l'un à côté de l'autre.

( la maitrise du CSS et du PHP sont totalement différente ).

pour ma solution, je t'ai filé un code en dur qui n'a rien à voir mais dont le principe est le même.

Edited by HimSelf
Link to comment
Share on other sites
Partagez cette page :

  • 3 weeks later...

Bon... de retour de mes (courtes) vacances... je me remets au taf !

Encore merci Himself... j'avance (sans doute beaucoup moins vite que d'autres mais bon !!!)

Un petite question: comment se fait-il que la commande d'alignement verticale <td valign="top"> ne fonctionne pas dans ce cas la ?? y a t'il une astuce ?

(du coup, si j'ai 1 pdt de moins dans la dernière colonne, tout est décalé pour se "centrer" verticalement, ce qui n'est pas beau)

Je vous mets le code:

[hide]<?php

echo '<p class="Style15"><table width="700px"><tr height="300px"><td width="33%"><td valign="top">'."\n";

$query = mysql_query("SELECT * FROM csv_ds WHERE cat_ids='458' ORDER BY Rand() Limit 0,999");

$nbreponse = mysql_num_rows($query);

$nbrcol = 3;

$tier = ceil($nbreponse/$nbrcol);

while ($data = mysql_fetch_array($query)) {

$titre[] = $data["pname"];

$url[] = $data["url"];

$photo[] = $data["img_med"];

$descr[] = $data["shortdesc"];

$prix[] = $data["price_eur"]." €"; }

for ($i=0; $i<$nbreponse ; $i++) {

if($i == $tier) {

echo "</td>"."\n"."<td>";$tier=$tier*2;

}

echo "<a href='$url[$i]'>".'<b>'.$titre[$i].'</b>'.'<br />'."<img src='$photo[$i]'>".'<br />'."\n".$descr[$i].'<br />'."\n".$prix[$i].'<br />'.'<br /><br />';

}

echo "</td></tr></table>";

?>[/hide]

ce qui donne ça:

ex.jpg

c'est pas beau hein !! lol !!

Link to comment
Share on other sites
Partagez cette page :

Bon... de retour de mes (courtes) vacances... je me remets au taf !

Encore merci Himself... j'avance (sans doute beaucoup moins vite que d'autres mais bon !!!)

Un petite question: comment se fait-il que la commande d'alignement verticale <td valign="top"> ne fonctionne pas dans ce cas la ?? y a t'il une astuce ?

(du coup, si j'ai 1 pdt de moins dans la dernière colonne, tout est décalé pour se "centrer" verticalement, ce qui n'est pas beau)

Je vous mets le code:

[.]

ce qui donne ça:

http://www.jarretelles-et-cie.com/ex.jpg

c'est pas beau hein !! lol !!

Tu dois surement avoir une erreur dans les td dans ta boucle comme le dit trimegiste

Met un border="1" sur ton tableau pour voir si y'a pas de soucis au niveau des cellules

Zig

Link to comment
Share on other sites
Partagez cette page :

Je sais que je suis un fanatique du XHTML Strict, W3C & Co. mais en 2008 on ne devrait plus utiliser des tableaux pour gérer la mise en page d'un site. Tout le positionnement peut se faire avec des div et des styles - on garde les tableaux uniquement pour présenter des données "tabulaires", liste de prix etc.

C'est pas si compliqué le XHTML+CSS, il suffit de bien comprendre le concept des éléments "flottants" et de respecter la syntaxe à la lettre, voici un petit tuto: http://css.alsacreations.com/Faire-une-mise-en-page-sans-tableaux/Mise-en-page-CSS-avancee-grace-a-la-propriete-display

Les avantages sont multiples :

- Compatibilité tous navigateurs et OS y compris périph. mobiles

- Le code est ultra léger, séparé du contenu, facile à lire et à modifier

- Les éléments sont structurées logiquement et hiérarchiquement idéal pour le référencement

- Et j'en passe...

Méfiez-vous des nouveaux navigateurs qui seront surement bcp plus stricts au niveau de la syntaxe du code html, la rumeur veut également qu'un code propre favorise de plus en plus le référencement...

En tt cas bon courage pour vos dév, ca fait plaisir de voir des partenaires motivés !

Link to comment
Share on other sites
Partagez cette page :

Merci pour les encouragements Adrien ! J'avoue que je galère et que la dispo ne me plait pas trop. je voudrais parvenir à des alignements parfaits (comme ceux de la boutique DS, avec les petits cadres qui vont bien !)

... d'ailleurs je t'ai envoyé un mail ;-)

Edited by spacemarmotte
Link to comment
Share on other sites
Partagez cette page :

bah oui valign=top c'est logique :)

vi mais j'avais du mal le placer et ça partait dans tous les sens :wacko:

mais comme le dis adrien, passe par du CSS & pas par des tableaux !

c'est la phase B du plan !

là, je veux re-dynamiser ma boutique dont la fréquentation a chuté en même temps que certaines autres boutiques DS mais n'est jamais remonté ! (je crois que GG ne m'aime pas ;-) )

J'aurai davantage de temps pour apprendre le CSS "tranquillement".

Edited by spacemarmotte
Link to comment
Share on other sites
Partagez cette page :

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share



© WebFrance - Contact - Annonceurs - Conditions générales - Legal

×
×
  • Create New...