rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Tableaux multi dimension pour le web

Posté par djoulch, le vendredi 18 avril 2003 à 18:10:40
Quelqu'un pourrait-il me dire s'il est possible en javascript et en php de créer des tableaux à 2 dimension comme avec le langage java?

Merci d'avance
Répondre à djoulch  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ipl, le vendredi 18 avril 2003 à 20:07:02
Bonsoir djoulch, bonsoir à tous,

2 dimensions... oui c'est bon pour JavaScript !

@12C4
Ipl
Répondre à ipl

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
djoulch, le samedi 19 avril 2003 à 12:50:04
Y'a-t-il un moyen d'initialiser un tableau deux dim de la même manière qu'un tableau 1 dim, comme dans le cas suivant :

tableau = [2,3,4,5];

Si oui, comment l'écrire dans le code ?
Répondre à djoulch

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Taboujr, le samedi 19 avril 2003 à 13:18:30
En ce qui concerne le php, il est aussi possible de créer des tableaux très complexes.

Pour les initialiser, le meilleur moyn est de remplir un tableau avec des tableaux comme ceci :
$array[]=array('a',26,true);
$array[]=array('b',25,false);
$array[]=array('c',24,false);
...
$array[]=array('z',1,false);
ensuite, en faisant un appel à la variable $array[$i][$j], tu peux balayer tout ton tableaux en faisant varier $i entre 0 et 25 et en affectant à $j la valeur 0 (pour obtenir le charactère), 1 (pour obtenir le chiffre) ou 2 (pour obtenir le booléen).

TaBou JuNioR
http://membres.lycos.fr/taboujr/
Répondre à Taboujr

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
djoulch, le samedi 19 avril 2003 à 14:13:54
Merci pour le php, si quelqu'un peut me fournir la même chose mais pour le javascript, je lui en serait extrêmement reconnaissant. ;)
Répondre à djoulch

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Archaon Iron, le samedi 31 mai 2003 à 07:57:45
Hello !

J'ai essayé comme dit Taboujr mais .. problème ! J'ai des données à prendre dans la bdd, sous forme de tableau.
Quand je fais par exemple $var=$tableau[0][0] au fait je ne reçoit que le premier caractère

$array[]=array('allo',26,true);
$array[]=array('bidon',25,false);
$array[]=array('coucou',24,false);

Là par exemple "a". Avec [1][0] j'aurai "2" (de "26"),... je n'y comprend rien !

$pop_sql="SELECT username, user_pop FROM phpbb4_users where user_id>0 ORDER BY user_pop DESC LIMIT 2";
$pop = $db->sql_query($pop_sql);
$pop = mysql_fetch_array($pop);
$username1 = $pop[0];
$user_pop1 = $pop[1];

Ca c'est ok si je veux avoir $username et $user_pop de premier de la liste(trié par user_pop), mais pour avoir $username2 et $user_pop2 : rien à faire !!

Quelqu'un pourrait-il m'expliquer quelle est mon erreur ? Merci

"Si on veut, on peut"
=> Hélas non, la chance (ou la malchance) a souvent son m­ot 
Répondre à Archaon Iron

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
PhP, le samedi 31 mai 2003 à 13:06:12
Bjr

Bah c'est normal car mysql_fetch_array() ne retourne qu'une ligne de la requête à la fois !
Pour avoir les autres lignes il faut faire une boucle ...

while ($pop = mysql_fetch_array($pop_sql)) {
echo $pop[0];
echo $pop[1];
}


Moralité le tableau $pop[] n'a qu'une dimension.

@+
PhP

[[  The Truth is Out There   ]]
Répondre à PhP

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
mroux, le jeudi 6 mai 2004 à 13:14:26
Je travaille avec un tableau 2 D mais je ne sais pas comment compter le nombre d'éléments, le count me ramène le nombre de colonnes alors que je voudrais obtenir le nombre de lignes
pouvez-vous me donner un coup de main ?

voila le fetch par lequel je charge le tableau
$result = mysql_query($select);
if ($result)
{
$nb_row = 0;
$i=0;
while ($row = @mysql_fetch_array($result))
{
for ($i=0; $i<$nbchamp; $i++)
{
$eltlu[$nb_row][$i] = $row[$i];
$nb_row++;
}
}
......
Lorsque je fais $nbr=count($eltlu);
je récupère 6 qui correspond à une seule ligne lue en table mais aux 6 attributs lus
Merci
Répondre à mroux

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
HackTrack, le jeudi 6 mai 2004 à 15:30:47
Si cela peux t'aider voici un script que j'ai écrit qui te permet d'utiliser un objet de type DataTable (voir code) qui facilite l'utilisation de tables à deux dimensions:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
	<title>TableDemo</title>
	<style>
		   table,tr{
		   	  background-color: #2222ff;
			  border-width: 1px;
			  border-style: solid;	   
		   }
		   td{
		   	  background-color: #aaaaff;
			  padding: 2 4 2 4;
		   }
	</style>
	<script language="javascript" type="text/javascript">
			/*
			  Author: Philippe Fery (HackTrack) philippefery@hotmail.com
			  Creation: May 6th, 2004

			  Crée une table à deux dimensions en prenant comme paramètres:
			  	   r : le nombre de rangs du tableau
				   c : le nombre de colonnes du tableau
			  Le tableau créé est 0-based. Pour adresser la 1ère cellule du 1er rang il faut donc utiliser les index (0,0)
			  Ce script peut être inclus dans vos pages si vous en mentionner la source
			*/
			function DataTable(r, c){
					 this.rowCount=r;
					 this.colCount=c;
					 this.table=new Array(this.rowCount);
					 this.init=initTable;
					 this.toHTML=htmlTable;
					 this.appendToDocument=append;
					 this.getData=getData;
					 this.setData=setData;
					 this.getRow=getRow;
					 this.getRowCount=getRowCount;
					 this.getColCount=getColCount;					 
					 this.init();
			}
			
			/*
			  Initialize the table
			*/
			function initTable(){
					 for(row=0 ; row<this.rowCount ; row++){
					    r = new Array(this.colCount);
						for(col=0 ; col<this.colCount ; col++){
						   r[col] ="z_"+row+"_"+col; 
						}
						this.table[row] =r;
					 }
			}	
			
			/*
			  Read data in the specified cell (0-based)
			*/			
			function getData(row, col){
					 return this.table[row][col];
			}
			
			/*
			  Insert data in the specified cell (0-based)
			*/
			function setData(row, col, data){
					this.getRow(row)[col]=data;
			}
			
			/*
			  Returns a row
			*/
			function getRow(index){
					 return this.table[index];
			}
			
			/*
			  Returns the number of rows
			*/
			function getRowCount(){
					 return this.rowCount;
			}
			
			/*
			  Returns the number of columns
			*/			
			function getColCount(){
					 return this.colCount;					 
			}
			
			/*
			  Generates a html table based on DataTable content
			*/
			function htmlTable(){
					 html  = "<table>";
					 for(row=0 ; row<this.rowCount ; row++){
					 	html +="<tr>";
						r = this.getRow(row);
					 	for(col=0 ; col<this.colCount ; col++){
						 	html +="<td>";
							html += r[col];
						 	html +="</td>";
					 	}
					 	html +="</tr>";						
					 }
					 html +="";
					 html +="";
					 html +="";
					 html +="";
					 html +="</table>";		
					 return html;			 					 					 
			}
			
			function append(){
					 tableDiv = document.createElement("span");
					 html = this.toHTML();
					 tableDiv.innerHTML = html;
					 document.body.appendChild(tableDiv);
			}
	</script>
</head>

<body>
	<script language="javascript" type="text/javascript">
			myTable = new DataTable(5,3);
			alert("Nombre de rangs: " + myTable.getRowCount());
			alert("Nombre de colonnes: " +myTable.getColCount());
			myTable.setData(0,0,"a");
			myTable.setData(2,2,"b");
			alert(myTable.getData(0,0));
			myTable.appendToDocument();		 
	</script>
</body>
</html>



;-)
Répondre à HackTrack

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 mroux, le jeudi 6 mai 2004 à 16:31:10
Merci pour l'aide, mais je ne peux pas utiilser de javascript, je fais tout en php,
je me suis débrouillée, mais je ne comprends pas bien comment fonctionnent les tableaux en 2D en php (j'ai fait pas mal de fortran et ça semble pas fonctionner pareil)

Merci pour le script
Répondre à mroux
Logiciels pertinents trouvés dans les téléchargements
Télécharger Tables multimédia  1,0Tables multimédia - En général les enfants ont tendance à ne pas vouloir étudier et les parents perdent parfois patience à leur apprendre. Peut...Catégorie: Bureautique
Licence: Freeware/gratuit
Télécharger Web Developer Toolbar 1.1.6Web Developer Toolbar - WebDeveloper est une extension firefox représentant une formidable boîte à outils pour examiner et manipuler les pages...Catégorie: Extensions Firefox
Licence: Freeware/gratuit
Télécharger K9 Web Protection 1.0K9 Web Protection - K9 Web Protection est un logiciel de contrôle parental permettant de contrôler et de limiter les accès à Internet de son...Catégorie: Contrôle parental
Licence: Freeware/gratuit
Télécharger WebBulle 1.04WebBulle - WebBulle est un aggrégateur de flux RSS . Il collectera les dernières informations de vos sites préférés, et vous...Catégorie: RSS
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « Tableaux multi dimension pour le web »