probleme de form

Eléphant du PHP | 419 Messages

27 juin 2005, 11:15

ok donc vaux mieux utiliser le post alors

Eléphant du PHP | 91 Messages

27 juin 2005, 11:37

ca depend des cas ^^, en absolue il n'y a pas de meilleur ou moins bon, sinon y en aurait pas 2 mais que 1 methode :p
YaTTa :D

Eléphant du PHP | 419 Messages

27 juin 2005, 11:45

euh oui je me suis aperçu que t'avais raison j'avais tout changé et finalement j'ai dû en remettre pas mal
ps: j'avais plus rien du tout sur le site

il y a toujours le problème est-ce que ça viendrait pas du fait que
$Requete = mysql_query("SELECT * FROM news WHERE id=".$_GET['code'].";");
soit en get je l'ais passé en post mais ça a tout fait foiré
<? require('conf.php') ?>
<?
mysql_select_db("$base", mysql_connect("$hote", "$log", "$pass"));
mysql_query("OPTIMIZE TABLE news");
mysql_query("CHECK TABLE news");
[u]$Requete = mysql_query("SELECT * FROM news WHERE id=".$_GET['code'].";");[/u]
$Resultat = mysql_num_rows($Requete);
$Nombre = 0;
WHILE ($Resultat!=$Nombre)
{
$id = mysql_result($Requete,$Nombre,"id");
$bloc1 = mysql_result($Requete,$Nombre,"bloc1");
$bloc2 = mysql_result($Requete,$Nombre,"bloc2");
$Nombre++;
}
echo "
<html>
<head>
<title>Administration de la news $id</title>
</head>

<body>
<form name=form1\ method=\"post\" action=\"modif2n.php\">
  <input type='hidden' name='id' value=".$id.">
  <table width=\"80%\" border=\"1\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
    <tr> 
      <td>Bloc1</td>
      <td><input name=\"bloc1\" type=\"text\" value=\"$bloc1\"></td>
    </tr>
    <tr> 
      <td>Bloc2</td>
      <td><textarea name=\"bloc2\" cols=\"50\" rows=\"10\">$bloc2</textarea></td>
    </tr>
  </table>
  <div align=\"center\">
    <input type=\"submit\" name=\"Submit\" value=\"Modifier\">
  </div>
</form>
</body>
</html>
";
?>

Eléphant du PHP | 91 Messages

27 juin 2005, 11:47

le tout est de savoir d'ou vient ta variable "code"
YaTTa :D

Eléphant du PHP | 419 Messages

27 juin 2005, 11:50

code vient de la page précédente qui est passé dans l'url
<table align="center" border="1">
                <tr>
                    <td valign="top">
                        <p align="center"><font face="Comic Sans ms">News
                        :</font></p>
                    </td>
                </tr>
                <tr>
                    <td>
                        <p><font face="Comic Sans ms">
						<BR>
<center><font size="4"><b>L'espace News !</b></font></center><br><br><br>
<table align=center border="1">
  <tr> 
    <td  valign=top>
<?php
require('conf.php');//Inclure les paramètres conf
$c1 = @mysql_connect("$hote","$log","$pass") or die("IMP TO CONNECT");//Connexion à SQL
@mysql_select_db("$base",$c1) or die("selection impossible");
$sql1 = "select * from news order by id desc";
//"select * from promotion order by id desc limit 15";
//Afichage des promotion, vous pouvez changé limit 5 par limit 10 ou autre.<br>
//Limit 2 limite à 2promotion par pages, 5, à 5news par page.
if($p1 = @mysql_unbuffered_query($sql1,$c1)){
while($data1 = @mysql_fetch_array($p1)){
?>
      <table border="1">
              <tr> 
                <td>
                  <font size="2">
                 <? echo $data1['bloc1']; ?></font>
				 <form name="form1" method="post" action="index.php?page=modifn&code=<? echo $data1['id']; ?>">
          <div align="center"> 
            <input type="submit" name="Submit" value="Modifier">
          </div>
        </form>
      <form name="form1" method="post" action="index.php?page=suprimern&code=<? echo $data1['id']; ?>">
          <div align="center"> 
            <input type="submit" name="Submit2" value="Suprimer">
          </div>
        </form>
				 </td>
				 
              </tr>
                          </table>
            <?
}
}
 //Fermeture SQL 2 ?>           </td>
  </tr>
</table>
						<BR><BR><BR>
						</font></span></p>
                    </td>
					</tr><tr><td>
					  <p><strong><font color="#000000" size="1.8" face="Verdana, Arial, Helvetica, sans-serif">[ <a href="index.php?page=ajoutn">Ajouter des new</a> ]</font></strong></p>
               </td> </tr>
            </table>

Eléphant du PHP | 91 Messages

27 juin 2005, 11:55

dans ta page alors, il faut bien que tu mette : $_GET['code'] car tu passe la variable code par l'url (tu n'à pas le choix vu que tu fais un lien)
YaTTa :D

Eléphant du PHP | 91 Messages

27 juin 2005, 11:57

je ne comprend pas trop ta maniere de récupéré les resultats

logiquement, vu que tu design un code dans ta requete (j'imagine que ce code est unique) donc il ne doit ressortir que 1 enregistrement donc :

remplace :
WHILE ($Resultat!=$Nombre)
{
$id = mysql_result($Requete,$Nombre,"id");
$bloc1 = mysql_result($Requete,$Nombre,"bloc1");
$bloc2 = mysql_result($Requete,$Nombre,"bloc2");
$Nombre++;
} 
par :
 $r = mysql_fetch_array($requete);
$id = $r["id"];
$bloc1 = $r["bloc1"];
$bloc2 = $r["bloc2"];
YaTTa :D

Eléphant du PHP | 419 Messages

27 juin 2005, 11:58

dans la page de validation?
parce que dans les autres ça y est déjà
j'ais fait ça ma dit ça
Notice: Undefined index: code in c:\program files\easyphp1-8\www\modif2n.php on line 3
c'est la même chose qu'avant il doit manquer autre chose

Eléphant du PHP | 91 Messages

27 juin 2005, 12:00

est ce que tu peux copier coller l'url qui te permet d'arriver à ta page de validation ?
YaTTa :D

Eléphant du PHP | 419 Messages

27 juin 2005, 13:17

en modifiant le code pour obtenir le résultat (c'est pas moi qui l'ai rédigé et j'y ais pas touché de peur d'y faire une connerie vu que je comprends pas trop ce qu'il fait)
j'obtiens ça sur mozilla
Notice: Undefined variable: requete in c:\program files\easyphp1-8\www\modifn.php on line 9

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\modifn.php on line 9
l'url pour accéder à la page de validation est
et pour aller à la page de modif c'est
apparement il prend pas code en compte parce qu'il n'est pas dans l'url

Eléphant du PHP | 419 Messages

27 juin 2005, 14:18

ça marche presque(il ya plus de message d'erreur)
maintenant le problème doit venir de la requête vu qu'il va au 2 ème die
<? require('conf.php') ?><strong><font size="1.8" face="Verdana, Arial, Helvetica, sans-serif">Bien modifier</font></strong><?
mysql_select_db("$base", mysql_connect("$hote", "$log", "$pass")) or die ("fe chier"); 
mysql_query("UPDATE news SET bloc1=".$_POST['bloc1'].", bloc2=".$_POST['bloc2']." WHERE id=".$_GET['code'].";") or die ("fe chier");
?>

Eléphant du PHP | 91 Messages

27 juin 2005, 14:21

oué petite erreur avec les points virgules
<? require('conf.php') ?><strong><font size="1.8" face="Verdana, Arial, Helvetica, sans-serif">Bien modifier</font></strong><?
mysql_select_db("$base", mysql_connect("$hote", "$log", "$pass")) or die ("fe chier");
mysql_query("UPDATE news SET bloc1=".$_POST['bloc1'].", bloc2=".$_POST['bloc2']." WHERE id=".$_GET['code']."") or die ("fe chier");
?>
YaTTa :D

Eléphant du PHP | 419 Messages

27 juin 2005, 14:24

nan c'est pas ça j'ai essayé sans conviction et ça marche pas
ps : il y avait un guillemet en trop

Eléphant du PHP | 419 Messages

27 juin 2005, 14:38

](*,) j'ai trouve j'avais oubliés les ' devant bloc1 et bloc2 (type texte) :shock: :tir2:
merci a tous je devrais plus rencontrer de probleme normalement