Gestion d'annonces.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Gestion d'annonces.

par Kaoteknik » 17 oct. 2007, 18:38

Je serais tenté de dire qu'au lieu d'effectuer une seconde requête pour afficher le résultat il serait préférable de faire une redirection, soit à l'aide de la balise html <meta http-equiv="refresh" content="n" url="http://www.ton_site.com/ta_page.php"> (n correspond au nombre de secondes souhaitées avant que la page ne se réactualise), soit à l'aide de la fonction header('location:ta_page.php');.

par seyb » 17 oct. 2007, 16:20

Hello,

Petit up car j'ai un autre problème.

Quand j'ajoute une annonce, la page s'actualise automatiquement, alors que quand j'en supprime une, je dois faire un refresh manuel pour voir la modification à l'écran.

Mon idée serait celle-ci : (Créer une suppression et juste après un affichage de la page), mais apparement cela ne fonctionne pas, je crois que je ne dois pas avoir la bonne méthode.
$suppr = mysql_query("DELETE FROM annonces WHERE id='$id'") AND ("SELECT * FROM annonces ORDER BY ID DESC LIMIT 0,10");
seb

par seyb » 15 oct. 2007, 17:29

Fiou..!

C'est bon j'ai réussi...!

J'en suis là... :

http://g0lgo.free.fr/phpnoobinside/screen.jpg

Ca avance, lentement mais surement...!

J'aurai jamais cru que j'étais capable de faire un truc du genre..
Je deviens amoureux du php... c'est mal pour un graphiste...! =))

Merci pour l'aide, demain j'attaque le modifier... Fiou...

seb

par Ryle » 15 oct. 2007, 15:57

Pas sur d'avoir tout compris... pour chaque date que tu veux consigner dans ta table, il te faut effectivement un champ dédié.

Dans MySQL le format des dates est "aaaa-mm-jj", à toi donc de le spécifier correctement dans ta requête (si l'utilisateur la saisie sous forme jj/mm/aaaa, il te faut reformater la chaine pour pouvoir l'utiliser. De même si tu utilises la fonction date() pour récupérer la date du jour : date('Y-m-d'). Tu peux aussi utiliser la fonction NOW() de mysql)

Voir le sujet Quelques petites manipulations avec les dates (PHP/MySQL) de la faq pour plus d'infos sur la manipulation des dates :)

par seyb » 15 oct. 2007, 15:19

Quand j'utilise le système de date de mysql
La date reste fixe : 0000-00-00

Je ne comprends pas :/

seb

par seyb » 15 oct. 2007, 15:12

Je viens de me rendre compte d'une erreur de ma part...

En fait, la date gérée est celle du jour, et non celle d'ajout...!
Faut-il que je créé un champ supplémentaire "date" dans ma bdd ?

seb

par seyb » 15 oct. 2007, 14:50

Je viens de gérer la taille par CSS oui.

Maintenant, j'attaque un bouton supprimer / modifier... hum

Espérons que ça marche aussi rapidement que le reste :]

seb

par Berzemus » 15 oct. 2007, 14:36

Si tu ne veux pas perdre ton temps à les redimmensionner (si le temps est trop précieux, que tu as mieux à faire), tu peux forcer la taille dans la balise <img>
http://www.w3schools.com/tags/tag_img.asp

ainsi:

Code : Tout sélectionner

<img height="20px" width="40px" src="./image.jpg">
Ou encore, par css:

Code : Tout sélectionner

<img class="toupeti" src="./image.jpg">
puis, dans ta feuille de style:

Code : Tout sélectionner

img.toupeti { width:40px; height:20px; }
ps: attention, c'est pas de l'xhtml valide ça ^-^

par seyb » 15 oct. 2007, 12:17

Bonne nouvelle, après une matinée de taf, voici ce que ça donne !
http://g0lgo.free.fr/phpnoobinside/omg.jpg

Je m'impressionne tout seul...!

J'arrive à gérer date, titre, description, image et tout ceci bien rangé dans mon tableau qui se répète !!!

Maintenant il faut que je force les images à avoir toutes une même taille... hum

Votre aide est précieuse, j'ai vraiment l'impression de commencer à comprendre le php :)))

seb

par Berzemus » 15 oct. 2007, 11:29

oui, tu pourras toujours (en attendant) spécifier la taille de l'image à afficher dans la balise html.

par Ryle » 15 oct. 2007, 11:06

Cool, c'est une bonne nouvelle :)

Par contre, à mon avis te prends pas trop la tête sur le redimensionnement tout de suite.. contente toi dans un premier temps (si ce n'est pas déjà fait) de gérer l'upload du fichier sur le serveur et l'affichage dans ton annonce. Redimensionne juste l'image à l'affichage en html/css avec l'attribut width.

Le redimensionnement physique de l'image pourra toujours être ajouté après, et vu le temps dont tu disposes, essaye de finaliser le côté fonctionnel (listing et pagination, envoi de mail, ...) la redimension devient du confort en temps de chargement pour de trop gros fichiers.. ce devrait donc pas être à mon avis une de tes priorités :)

par Berzemus » 15 oct. 2007, 10:39

une recherche rapide me donne ceci, pour le redimensionnage:
http://www.asp-php.net/scripts/asp-php/vignette.php

Mais je suis sur qu'il y a moyen de trouver mieux..

par seyb » 15 oct. 2007, 09:47

youhou !

Hello !

En ce lundi matin, j'arrive officiellement à ajouter et à afficher mes données dans la bdd !
Je sèche en revanche sur une chose...!

Le système d'ajout d'upload de l'image avec redimmensionnement, un tuto quelquepart ?

seb

par AB » 12 oct. 2007, 21:18

Bah justement on traite d'une connexion bdd et d'un formulaire d'authentification ici (lis jusqu'à la fin)
http://www.phpfrance.com/forums/viewtop ... highlight=

par seyb » 12 oct. 2007, 16:38

Bon...

J'attaque avec un bouquin...
Je crois que des trucs ne collent pas, étant donné que ça ne marche pas..

V'là le code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formulaire d'ajout</title>
<link rel="stylesheet" type="text/css" href= "form.css">
<style type="text/css">
</style>
</head>
<body>
<?php
$sql["serveur"]='localhost';
$sql["login"]='root';
$sql["pass"]='';
$sql["base"]='basetest';
$sql["connect"]=mysql_connect($sql["serveur"],$sql["login"],$sql["pass"])or die ("impossible de se connecter, réessayé plus tard");
$sql["select_base"]=mysql_select_db($sql["base"],$sql["connect"])or die ("erreur de connexion base");
$machine = $_POST['machine'];
$description = $_POST['description'];
if (isSet($_POST['inserer']))
$requete = "INSERT INTO annonces (id, machine, description) VALUES ('', '$machine', '$description')";
?>
<body>
<form method="POST" name="letsgo">
<table width="300" height="200" border="0" align="center" cellspacing="0" id="contour">
  <tr>s
    <td width="247" bgcolor="#FFFFFF"><span class="Text">Nom de la machine</span></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF"><input name="machine" type="text" size="50" /></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF"><span class="Text">Description</span></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF"><textarea name="description" cols="38" rows="5"></textarea></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF"><div align="right">
      <input type="submit" name="inserer" value="Inserer" />
    </div></td>
  </tr>
</table>
</form>
</body>

</html>
Je vais y arriver ><

seb