peut-on en php délimité un tableau en taille?

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 : peut-on en php délimité un tableau en taille?

par romain » 14 déc. 2006, 17:38

nan ce n'est pas dans le pied de page !
si tu veux ce que je dois faire aparaitre en bas c'est la somme total de la facture et en haut l'entete adresse logo...
je sais pas si je vais pas essayer en comptant les br.
quelqu'un peut me donner une fonction qui cherche dans une chaine de caractere contenu dans une variable les caractere suivant "<br>" et qui me les compte ?

Merci !

par jojolapine » 05 déc. 2006, 17:15

est-ce que le tableau remarque fait partie d'un pied de page?
ou bien est-il seulement inclus à la fin?
Sinon, pour tout te dire, je pense qu'il va falloir te tourner vers les propriétés css du type page-break-*
Mais je ne suis pas des plus doué dans ce domaine :) renseigne toi la dessus, et reviens nous voir avec une ébauche!

par Romain » 05 déc. 2006, 17:11

javais penser a ceux que tu m'a remarquer, mais les description qui se trouve ici font rarement toutes la largeur de la collone.
pour te montrer un exemple de facture jai mi en ligne une page.

http://www.globanet.fr/exemplefact.html


pour t'expliquer l'entete cest tous simplement tous se qu'il y a avant le début de tableau, cest a dire le logo, ladresse du client,le premier tableau avec le mode de règlement et bien sur les titres des colone de mon tableau(ref, designantion, pu HT...)


Jespere que tu va pouvoir m'aider et si tu veux plus de précisions n'ésite pas a demander.

Merci D'avance !

Romain

par jojolapine » 04 déc. 2006, 18:13

j'ai à peu près compris (en gros), mais tu faits une erreur d'analyse, si tu as une phrase un peu longue sans saut de ligne, et que la colonne de ton tableau n'est pas très large, le texte va revenir à la ligne malgrès tout, tu auras donc plus de ligne que de <br />, ça n'est pas l abonne méthode il me semble,
essaye de mettre en ligne une page où tu n'auras pas mit les entêtes, mais où le tableau sera formé, pour que je vois au moins de quoi ça à l'air...

par romain » 04 déc. 2006, 15:58

bein en faite je ne connais pas la longueur de mon champ, si tu veu je sais qu'au maxi il sera de 255 caractères,mais il varit (c'est une description) mais j'aimerai savoir combien de ligne il me prendra une fois mit en page dans mon tableau.

dans mon champ on trouve des <br> pour les sauts de ligne donc je me disais que je peut justement me servir du nombre de <br> pour savoir le nombre de ligne par enregistrement.

j'espere que tu réussi a me comprendre sinon dit le moi jessayerai d'etre plus claire.

merci

par jojolapine » 04 déc. 2006, 12:39

comment ça tu ne onait pas le nombre de ligne saisie?
Tu récupère bien tes enregistrements en bdd, donc un mysql_num_rows() te retourneras le nombre d'enregistrement... ou alors j'ai mal saisie la structure de table, si c'est le cas, merci de détailler cette dernière ;-)

par romain » 04 déc. 2006, 12:12

oui, c'est vrai je devrais compter en nbe de lignes, mais le souci c'est que je ne sais pa a l'avance le nbe de ligne que jai dans mes enregistrements puisque je charge les element de ma base :
while ( $resultat = mysql_fetch_array($req)) 
{ 
$tvaa=$resultat[pxTTC]-$resultat[pxHT]; 

print '<tr><td>'.$resultat[dateedit].'</td><td><a href="refact.php?nfact='.$resultat[n_fact].'" target="blank">'.$resultat[n_fact].'</a></td><td><a href="reconstitution.php?n_devis='.$resultat[n_devis].'" target="blank">'.$resultat[n_devis].'</a></td><td>'.$resultat[client].'</td><td>'.$resultat[pxHT].'</td><td>'.$tvaa.'</td><td>'.$resultat[pxTTC].'</td><td>- '.$resultat[acompte].'</td><td><a href="javascript:ouvreFenetre(\'\pay.php?nfact='.$resultat[n_fact].'\', 300, 200)">'.$resultat[soldu].'</a></td><td>- '.$resultat[dateech].'</td></tr>'; 
} 
il me faudrait un moyen de compter le nbe de ligne saisi, en faite je dois compter le nbe de <br> que jai dans mon enregistrement,
existe-til une fonction pour faire ca ???

Merci d'avance

par jojolapine » 01 déc. 2006, 16:47

je ne pense pas qu'il faille penser en nombre de pixels... mais plutôt en nombre de ligne, et suivant ton design, tu verras combien de ligne tu mettras avant de remttre les intitulés.
un exemple avec le modulo
<?php
$nbrLignes=3;
for($i=0;$i<30;$i++){
  if(($i%$nbrLignes)==0){
    echo "Entêtes...";
  }
  echo "blabla n°".$i;
}
?>
essaye ce code, modifie le habitue toi avec le %, peut-être qu'il te viendra une idée quand à ton problème

par romain » 01 déc. 2006, 13:48

je ne connaissais la fontion modulo je vien d'allez voir ca me renvoi le reste d'un division j'aurai pu men douté ! lol

mais je ne vois pas comment me servir du modulo.

jai trop fais d'essaie car j'ai pas de solution pour le moment.
je sais pas comment faire pour compter le nom de pixel du tableau, donc je vois pas comment faire pour le moment
pour l'instant jai un code un peu pres comme ceci :

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>facture</title>
</head>

<body>
<table width="100%" border="1">
  <tr> 
    <td width="6%" > <div align="center">Date</div></td>
    <td width="7%" > <div align="center">N°Facture </div></td>
    <td width="7%" ><div align="center">N&deg;Devis</div></td>
    <td width="8%"> <div align="center">Client </div></td>
    <td width="11%"> <div align="center">Prix HT </div></td>
    <td width="7%"> <div align="center">TVA </div></td>
    <td width="6%"> <div align="center">Prix TTC </div></td>
    <td width="11%"><div align="center">Acompte</div></td>
    <td width="13%"> <div align="center">Restant d&ucirc; </div></td>
    <td width="24%"><div align="center">Date &eacute;ch&eacute;ance</div></td>
  </tr> (mon entete de tableau celle que j'aimerai répété ensuite apres une certaine taille)

<?
include("connect.php");
$req = mysql_query("SELECT ......") or die ("erreur sql ".mysql_error()); //ma req


while ( $resultat = mysql_fetch_array($req))
{
$tvaa=$resultat[pxTTC]-$resultat[pxHT];

print '<tr><td>'.$resultat[dateedit].'</td><td><a href="refact.php?nfact='.$resultat[n_fact].'" target="blank">'.$resultat[n_fact].'</a></td><td><a href="reconstitution.php?n_devis='.$resultat[n_devis].'" target="blank">'.$resultat[n_devis].'</a></td><td>'.$resultat[client].'</td><td>'.$resultat[pxHT].'</td><td>'.$tvaa.'</td><td>'.$resultat[pxTTC].'</td><td>- '.$resultat[acompte].'</td><td><a href="javascript:ouvreFenetre(\'\pay.php?nfact='.$resultat[n_fact].'\', 300, 200)">'.$resultat[soldu].'</a></td><td>- '.$resultat[dateech].'</td></tr>';
}
mysql_close();
?>
</table>
dc ca c'est ma base ca fonctionne.

si d'autres question n'ésite pas !

Merci

par jojolapine » 01 déc. 2006, 13:35

as-tu déja fait des essais ?
Sinon essaye des petites choses, avec par exemple: l'opérateur % (modulo)

peut-on en php délimité un tableau en taille?

par romain » 01 déc. 2006, 13:26

salut a tous,

je suis un nouveau en php, avec quelques base appris sur le tas, mais j'arrive face a un probleme que ne sais pas résoudre.

Pour vous expliquer, je génère un tableau pour faire des factures, mes donné sont prise dans ma base de donnée mysql, et ensuite inscrit dans mon tableau qui s'imcrémente en fonction du nombre de ligne, jusque la tous va bien.
ensuite les choses se compliquent, je voudrais pouvoir délimité mon tableau en pixel ou autre pour dire a celui-ci lorsque la saisie n'est pas fini de continuer dans un autre tableau plus bas ou j'aurai remi toute lentete de ma facture et ensuite finir de saisir le tableau.
en faite tous ca pour pouvoir sortir une facture sur deux pages si besoin est avec l'entete et la suite du tableau.

je sais pas si c'est possible, si vous avez besoin de plus d'info n'esiter pas a me demander.

Merci a tous!