PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 05-04-2014 15:41:02

Daniboom
Membre
Inscription : 05-04-2014
Messages : 5

[Résolu]Retour à la ligne

Retour à la ligne

Messagepar Daniboom Aujourd’hui, 13:32
Bonjour,

J'ai récupérer un script de BDD qui fonctionne parfaitement. J'aimerais juste pouvoir faire en sorte que le script gère les retours à la ligne qui sont insérés lors de la saisie dans le formulaire. J'ai compris qu'il était possible de le faire avec n12br(), mais impossible de le placer correctement dans le script.

Le script est actuellement en test à l'adresse suivante : ***
Et voici le script proprement dit

<?php
/* "Passez moins de temps sur le derrière !"
Ce programme est librement modifiable et adaptable.
Cependant n'hésitez pas à m'envoyer vos modifications car de nombreuses améliorations sont possibles !
D'autres scripts sur http://www.webcreation-fr.com
Auteur : Cyril ROHR
Version : 0.1
Vous devez modifier les paramètres ci-dessous pour pouvoir utiliser le script :
*/
// INFOS DE CONNEXION à la BDD
$serveur='localhost'; // serveur
$user='****; // nom d'utilisateur
$password='***'; // mot de passe
$base='****'; // nom de la base contenant les tables
/*
Noms des tables et leurs champs :
Note : il est obligatoire que vos tables disposent d'un champ "id" bénéficiant de l'option d'auto-incrémentation ou étant une clé primaire
S'il existe un champ "mdp" (mot de passe), son contenu sera obligatoirement caché lors du listage des entrées de la table.

Dans l'exemple ci-dessous, la première entrée, qui est en fait un sous-tableau, est le nom de la table à administrer.
dans le sous-tableau, vous devez mettre le nom exact des champs que vous souhaitez administrer (peu importe l'ordre)
*/
$champs=array(
        "Fiches"=>array("id","titre","photo","photo1","photo2","pseudo","age","region","ans","lien","miseeau","dimensions","litrage","orientation","maintenance","materiel","ajouts","eclairage","diversmateriel","poissons","diverspoissons","invertebres","diversinvertebres","coraux","diverscoraux","textelibre"),
       
);
/*
Pour finir, vous devez modifier les liens apparaissant dans le cadre "menu" plus bas dans cette page. Prenez exemple sur les liens existants pour
en créer d'autres. La syntaxe est la suivante :
<a href="<?=$_SERVER["PHP_SELF"]?>?table=NOM_DE_LA_TABLE&q=ACTION_A_EFFECTUER">NOM_DU_LIEN</a>
Avec ACTION_A_EFFECTUER valant "Ajouter" si vous voulez ajouter une entrée dans la table ou valant "" si vous voulez simplement lister.
*/


// Connexion à la base
$connexion = mysql_connect("$serveur","$user","$password") or die ("Impossible de se connecter à la base de données");
// sélection de la base
mysql_select_db("$base",$connexion);
// FONCTIONS DIVERSES
function Ajouter($table, $query) {
$insert=mysql_query("insert into $table set $query");
if ($insert==TRUE) {
echo "Les données ont été correctement ajoutées<br />";
}
else {
echo "Erreur lors de l'ajout des données<br />";
}
}
function Modifier($table, $query, $where) {
$update=mysql_query("update $table set $query where $where");
if ($update==TRUE) {
echo "Les données ont été correctement modifiées<br />";
}
else {
echo "Erreur lors de la modification des données<br />";
}
}
function Supprimer($table, $where) {
$delete=mysql_query("delete from $table where $where");
if ($delete==TRUE) {
echo "Les données ont été correctement effacées<br />";
}
else {
echo "Erreur lors de la suppression des données<br />";
}
}
?>
<!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>
<title>Administration des bdd</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="imagetoolbar" content="no" />
<meta content="TRUE" name="MSSmartTagsPreventParsing" />

<style type="text/css" media="screen">
@import url( css.css );
.Style1 {font-size: 11px}
.Style2 {color: #FF0000}
.Style3 {color: #369}
.Style5 {
        color: #FF0000;
        font-size: 16px;
        font-weight: bold;
}
</style>
<script language="Javascript">
function confirmation(url)
{
if(confirm('Voulez-vous vraiment supprimer ?'))
document.location.href=url
}
</script>
</head>

<body>
<!-- CADRE PRINCIPAL //-->
<div id="cadreprincipal">
        <!-- MENU //-->
        <div id="menu">
                <div class="titremenu">
                        Fiches des bacs         </div>
                <div class="liensmenu">
                        <ul>
                                <li><a href="<?=$_SERVER["PHP_SELF"]?>?table=Fiches">Gérer les entrées</a></li>
                                <li><a href="<?=$_SERVER["PHP_SELF"]?>?table=Fiches&q=Ajouter">Ajouter une entrée</a></li>
                        </ul>
                </div>
               
                <span class="liensmenu Style1"><span class="Style2">Attention ! </span><span class="Style3">Ne pas utiliser le symbole</span> <span class="Style5">&quot;</span></span><br />
                <div style="font-size:10px"></div>            
        </div>
  <div id="main">
        <?php
        /////////////////// PROGRAMME PRINCIPAL
        if (isset($_GET["q"])) { $q=$_GET["q"]; } elseif(isset($_POST["q"])) { $q=$_POST["q"]; } else { $q=""; }
        if (isset($_GET["sq"])) { $sq=$_GET["sq"]; } elseif(isset($_POST["sq"])) { $sq=$_POST["sq"]; } else { $sq=""; }
        if (!isset($_GET["table"])) {
                echo "<div class=\"erreur\">Erreur ! La page n'a pas été appelée avec les bons paramètres.</div>";
        } else {
                $table=$_GET["table"];
                $prefixe=""; // Utile si vous désirez préfixer automatiquement les tables
                $table_utilisee="$prefixe".$table."";
                               
                switch($q) {
                        /// Formulaire d'ajout
                        case "Ajouter";
                                $nb_champs=sizeof($champs["$table"]);
                                echo "<div class=\"titrecorps\">Ajout d'une entrée dans la table \"$table\"</div>";
                                if ($sq=="Valider") {
                                        $valeurs="";
                                        $i=0;  
                                        while($i<$nb_champs) {
                                                $nom_champ=$champs["$table"]["$i"];    
                                                if ($i!=0) {
                                                        $valeurs.=" ,";
                                                }
                                                $valeurs.="$nom_champ=\"$_POST[$nom_champ]\"";                        
                                        $i++;
                                        }
                                        Ajouter("$table_utilisee",$valeurs);
                                        ?>                            
                                        <script language="Javascript">
                                        window.location="<? echo "".$_SERVER["PHP_SELF"]."?table=$table&msg=1"; ?>";
                                        </script>
                                        <?php
                                } else {
                                        echo "
                                        <form action=\"".$_SERVER["PHP_SELF"]."?table=$table&q=Ajouter&sq=Valider\" method=\"post\">
                                        <table border=\"0\">";
                                        $i=0;  
                                        while($i<$nb_champs) {
                                                $nom_champ=$champs["$table"]["$i"];
                                                $nom_champ_maj=strtoupper($nom_champ);
                                                echo "
                                                <tr>
                                                        <td><b>$nom_champ_maj</b></td><td><textarea name=\"$nom_champ\" cols=\"40\" rows=\"3\"></textarea></td>
                                                </tr>";
                                                $i++;
                                        }
                                        echo "
                                        <tr valign=\"top\">
                                                <td colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"Valider\"></td>
                                        </tr>
                                        </table>
                                        </form>";
                                }
                        break;
                       
                        case "Modifier";
                                $nb_champs=sizeof($champs["$table"]);
                                echo "<div class=\"titrecorps\">Modification d'une entrée de la table \"$table\"</div>";
                                $id=$_GET["id"];                      
                                if ($sq=="Valider") {
                                        $valeurs="";
                                        $i=0;  
                                        while($i<$nb_champs) {
                                                $nom_champ=$champs["$table"]["$i"];    
                                                if ($i!=0) {
                                                        $valeurs.=" ,";
                                                }
                                                $valeurs.="$nom_champ=\"$_POST[$nom_champ]\"";                        
                                        $i++;
                                        }
                                        Modifier("$table_utilisee",$valeurs,"id=\"$id\"");
                                        ?>                            
                                        <script language="Javascript">
                                        window.location="<? echo "".$_SERVER["PHP_SELF"]."?table=$table&msg=2"; ?>";
                                        </script>
                                        <?php
                                } else {
                               
                                $select=mysql_query("select * from $table_utilisee where id=\"$id\"");
                                $res=mysql_fetch_array($select);
                                echo "
                                <form action=\"".$_SERVER["PHP_SELF"]."?table=$table&q=Modifier&sq=Valider&id=$id\" method=\"post\">
                                <table border=\"0\">";
                                $i=0;  
                                while($i<$nb_champs) {
                                        $nom_champ=$champs["$table"]["$i"];
                                        $nom_champ_maj=strtoupper($nom_champ);
                                       
                                        echo "
                                        <tr>
                                                <td>$nom_champ_maj</td><td><textarea name=\"$nom_champ\" cols=\"40\" rows=\"3\">".$res["$nom_champ"]." </textarea></td>
                                        </tr>";
                                        $i++;
                                }
                                echo "
                                <tr valign=\"top\">
                                        <td colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"Valider\"></td>
                                </tr>
                                </table>
                                </form>";
                               
                                }
                        break;
                       
                        case "Supprimer";
                        echo "<div class=\"titrecorps\">Suppression d'une entrée de la table \"$table\"</div>";
                        Supprimer("$table_utilisee","id=\"$_GET[id]\"");
                        ?>                            
                        <script language="Javascript">
                        window.location="<? echo "".$_SERVER["PHP_SELF"]."?table=$table&msg=3"; ?>";
                        </script>
                        <?php
                        break;
               
                       
                        default:
                        echo "<div class=\"titrecorps\">Enregistrements de la table \"$table\" :</div>";
                        $ordre=$champs["$table"]["0"];
                        $select=mysql_query("select * from $table_utilisee order by $ordre ASC");
                        $nb_enregistrements=mysql_num_rows($select);
                        $tab_msg=array(
                                                        "1"=>"Les données ont été correctement ajoutées !",
                                                        "2"=>"Les données ont été correctement modifiées !",
                                                        "3"=>"Suppression de l'enregistrement effectué !");
                        ?>
                        &raquo; <?=$nb_enregistrements?> enregistrement(s) dans cette liste.  
                        <?php
                        if (isset($_GET["msg"])) {
                                echo "<div class=\"erreur\">".$tab_msg[$_GET["msg"]]."</div>";
                        }
                        ?>
                        <table border="1">
                                <tr align="center"><td><b>ACTIONS</b></td>
                                <?php  
                                $nb_champs=sizeof($champs["$table"]);
                                while(list($k,$nom_champ)=each($champs["$table"])) {
                                        $nom_champ_maj=strtoupper($nom_champ);
                                        echo "<td><b>$nom_champ_maj</b></td>";
                                }
                                ?>
                                </tr>
                        <?php
                        while ($res=mysql_fetch_array($select)) {
                                echo "<tr><td>[<a href=\"".$_SERVER["PHP_SELF"]."?table=$table&q=Modifier&id=".$res["id"]."\">M</a>] - [<a href=\"javascript&#058;confirmation('".$_SERVER["PHP_SELF"]."?table=$table&q=Supprimer&id=".$res["id"]."');\">S</a>]</td>";
                                $i=0;  
                                while($i<$nb_champs) {
                                        $nom_champ=$champs["$table"]["$i"];
                                        if ($nom_champ=="mdp") {
                                                echo "<td>********</td>";
                                        } else {
                                                echo "<td>".$res["$nom_champ"]."</td>";
                                               
                                        }
                                        $i++;
                                }
                                echo "</tr>";
                        }              
                ?>
                        </table>
                        <?php
                        break;
                }
        }
        mysql_close();
        ?>
        </div>
</div>
</body>
</html>

Dernière modification par Daniboom (07-04-2014 08:20:57)

Hors ligne

#2 05-04-2014 18:52:39

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : [Résolu]Retour à la ligne

Saluton,

Si j'ai bien compris ton script un peu tuyau de poële, je te suggère ceci

echo "
<tr>
    <td>$nom_champ_maj</td>
   <td>
       <textarea name=\"$nom_champ\" cols=\"40\" rows=\"3\">".nl2br($res["$nom_champ"])." </textarea>
   </td>
</tr>";

Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#3 06-04-2014 21:11:28

Daniboom
Membre
Inscription : 05-04-2014
Messages : 5

Re : [Résolu]Retour à la ligne

C'est pas mon script, suis incapable de faire un truc comme ça, je l'ai juste récupérer. Mais il doit être branlant en effet, car ta solution ne marche pas. sad

Hors ligne

#4 07-04-2014 06:48:11

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : [Résolu]Retour à la ligne

Alors c'est peut-être là :

         while($i<$nb_champs) {
                                        $nom_champ=$champs["$table"]["$i"];
                                        if ($nom_champ=="mdp") {
                                                echo "<td>********</td>";
                                        } else {
                                                echo "<td>".nl2br($res["$nom_champ"])."</td>";
                                               
                                        }
                                        $i++;
                                }

Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#5 07-04-2014 08:20:02

Daniboom
Membre
Inscription : 05-04-2014
Messages : 5

Re : [Résolu]Retour à la ligne

Ca fonctionne du tonnerre! Merci beaucoup!

Hors ligne

Pied de page des forums