Pb pour récupérer les données d'un formulaire

sophie 34 -  
sophie5900 Messages postés 5 Statut Membre -
Bonjour,
Bonjour,

Je dois créer une page PHP sur laquelle seront visualisées les données récupérées sur un formulaire.

Une des ces données est un texte de plus de 100 caractères mais elle doit être tronquer à seulement 40 caractères lors de la visualisation de la page de renvoi.

voici le bout de code pour y arriver :
<?php 
$chaine = $_POST['contents'] ; 
$lg_max = 40; 
if (strlen($chaine) > $lg_max){ 
$chaine = substr($chaine, 0, $lg_max); 
} 
echo $chaine; 
?>


le problème, c’est que je ne sais pas où il faut l’insérer dans la page de renvoi PHP, au début (après le <body>…), ou juste avant le </head> par exemple…, au milieu (mais où?)

je galère, merci de m’aider :)

12 réponses

avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
if (strlen($chaine)?>$lg_max){
:-/
1
graffx Messages postés 120 Date d'inscription   Statut Contributeur Dernière intervention   1 976
 
mais non tu le met la ou tu veux qu' apparaissent ton texte entre les body.

$chaine = $_POST['contents'] ;

donc $chaine = le champs "contents" de ton formulaire

et donc apres avoir coupé tout ca

echo $chaine;

affichage de ton "contents" coupé.
0
sophie5900 Messages postés 5 Statut Membre
 
graffx, merci pour ta réponse (que serai-je sans toi!)

voici la résultat:

http://img513.imageshack.us/img513/3263/lollb.png

le texte doit apparaître dans la case dece tableau.
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Il faut passer par un serveur pour que le PHP fonctionne ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sophie5900 Messages postés 5 Statut Membre
 
oui, oui, je passe par wamp.

voici la "tête" du tableau:

http://img513.imageshack.us/img513/3263/lollb.png

dans la case, il devrait normalement y avoir un texte tronqué à 40 caractères.....
0
graffx Messages postés 120 Date d'inscription   Statut Contributeur Dernière intervention   1 976
 
tu es sur quel logiciel?

Tu dois avoir deux parties : visuelle et codage

Visuelle : tu regarde ce que ca donne quand tu a fait ta page en mode codage, c' est ce que verront les visiteurs
codage : c' est ta page de travail en ligne de code, html , php et le reste si il y en a.

La on voit un tableau sur ton image, tu dosi donc etre en mode visuel, . Il faut que tu trouves donc la partie codage pour mettre du php.
0
sophie5900 Messages postés 5 Statut Membre
 
je suis sur Komposer (avec une partie pour voir le code source et une autre pour voir le "design")

les visiteurs verront ça en page de renvoi:

http://img513.imageshack.us/img513/3263/lollb.png

et comme tu peux le constater, le texte tronqué à 40 caractères n'apparait pas. Je précise que le texte apparaissait dans son intégralité dans la case mais voila, en y intégrant le bout de code (que tu m'avais gentillement soumis), rien n'apparait (enfin jette un coup d'oeil à l'image), ni le texte, ne le texte tronqué.

" Il faut que tu trouves donc la partie codage pour mettre du php."

ben oui, c'est ce que je fais (j'ai seulement utiliserla partie "design" pour faire la tableau plus rapidement, sinon tout le reste est fait dans la partie code source.
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Comme je le disais, tu dois passer par un serveur Web pour voir le texte tronqué.
KompoZer ne peut pas exécuter le PHP, donc normal.
Par contre, as-tu inséré le script en mode visuel ou un mode code source ?
0
sophie5900 Messages postés 5 Statut Membre
 
justement en passant par WAMp, j'ai le tableau mais sa case ne contient pas le texte, voici une capture d'écran du résultat de WAMP:

http://img513.imageshack.us/img513/3263/lollb.png

pour le script, j'ai fait le tableau (les bordures, les cases) en passant par le mode visuel (pour aller plus vite) nsinon tout le reste en est code source.
0
sophie
 
excuse-moi je me suis trompée:

sans le bout de code en vue de tronquer le texte, wamp me renvoit cette page:

http://img705.imageshack.us/img705/1193/sanscode.png

(le texte est dans la dernière case)

avec le bout de code:

wamp me renvoit un :

Parse error: parse error in C:\wamp\www\tests\envoi.php on line 54
0
Ricky38 Messages postés 5776 Date d'inscription   Statut Contributeur Dernière intervention   1 462 > sophie
 
Salut Sophie,

faudrait que tu nous colles ton code ici s'il te plaît, mets le entre les balises



Merci ;)
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Bizarre, chez moi ça fonctionne.
$chaine = $_POST['contents'] ; 
$lg_max = 40; 
if(isset($chaine{$lg_max + 1})) {
	$chaine = substr($chaine, 0, $lg_max).' ...'; 
}
echo $chaine; 
0
sophie
 
Bonjour!

voici le code de la page PHP de renvoi:

<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title>envoi</title>
</head>
<body>
<span style="font-style: italic;">(Demande envoyée par l'adresse IP</span>&nbsp;<br>
<?php echo $_SERVER['REMOTE_ADDR']; ?>)<br>
<br>
<table style="text-align: left; width: 100px;" border="1"
cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;"><span style="font-weight: bold;">Application</span><br>
</td>
<td style="vertical-align: top;"><span style="font-weight: bold;">Priorité</span><br>
</td>
<td style="vertical-align: top;"><span style="font-weight: bold;">Type</span><br>
</td>
<td style="vertical-align: top;"><span style="font-weight: bold;">Date</span><br>
</td>
<td style="vertical-align: top;"><span style="font-weight: bold;">Résumé</span><br>
</td>
<td style="vertical-align: top;"><span style="font-weight: bold;">Description</span><br>
</td>
</tr>
<tr>
<td>
<p>YAHD</p>
</td>
<td style="vertical-align: top;"><?php echo $_POST['priority']; ?><br>
</td>
<td style="vertical-align: top;"><?php echo $_POST['type']; ?><br>
</td>
<td style="vertical-align: top;">&nbsp;&nbsp; ?<br>
</td>
<td style="vertical-align: top;"><?php echo $_POST['oneLiner']; ?><br>
</td>
<td style="vertical-align: top;"><?php $chaine = $_POST['contents'] ;
$lg_max = 40;
if (strlen($chaine)?>$lg_max){
$chaine = substr($chaine, 0, $lg_max); } echo $chaine; ?><br>
</td>
</tr>
</tbody>
</table>
</body>
</html>


le bout de code incriminé est en gras.
merci.
0
sophie5900 Messages postés 5 Statut Membre
 
oulala, je vais rectifier ça sur le champ et voir ce que ça donne..........
0