Foros del Web » Programando para Internet » PHP »

FOREACH: problema con impresion de lineas

Estas en el tema de FOREACH: problema con impresion de lineas en el foro de PHP en Foros del Web. buenas tengo un problemilla estoy haciendo unos graficos con php y necesito que una linea se repita varias veces y no soy capaz de conseguirlo ...
  #1 (permalink)  
Antiguo 21/02/2011, 07:44
 
Fecha de Ingreso: febrero-2011
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
FOREACH: problema con impresion de lineas

buenas tengo un problemilla estoy haciendo unos graficos con php y necesito que una linea se repita varias veces y no soy capaz de conseguirlo solo me imprime la ultima
Código:
foreach ($proveedor as $value){
	$dataSet->addPoint(new Point($proveedor[i], $numero[i]));
	}
este seria el for y quiero que me saque tantas lineas como elementos tenga el array proveedor
haber si me podeis echa una manilla
muchas gracias
os dejo tambien el codigo completo por si os ayuda
Código:
<?php
header("Content-type: image/png");	
include('../Conexion.php');
include "../libchart/classes/libchart.php";		
			
    
    $fechai ='2001-02-10';
    $fechaf = '2009-02-10';
    
	

				
  
                $consulta ="SELECT p.nombre, count(*) from modelos m, proveedores p where p.codproveedores = m.proveedores_codproveedores and m.Fecha_Adquisicion between '" .$fechai. "' and '" .$fechaf. "' group by  m.proveedores_codproveedores"; 
                $resultado = mysql_query($consulta);
				
				
			 
				
				 while($filas=mysql_fetch_row($resultado)){
							
							 $proveedor[i]=$filas[0];
							 
							$numero[i]=$filas[1];
							
						
				}
				 

				 
				 
				
	

	
	$chart = new VerticalBarChart(500,250);
	
	$dataSet = new XYDataSet();
	foreach ($proveedor as $value){
	$dataSet->addPoint(new Point($proveedor[i], $numero[i]));
	}
	$chart->setDataSet($dataSet);
	
	$chart->setTitle("Coches comprados a proveedores");
	$chart->render();

      
			
?>
  #2 (permalink)  
Antiguo 21/02/2011, 07:53
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: FOREACH: problema con impresion de lineas

$proveedor[i]=$filas[0]; ?... recuerda q estas en php y no en javascript

las variables se inician con un $ antes... y en tu caso no estas incrementando esa variable por lo cual todos los valores se estan sobreponiendo ...

$proveedor[$i++]
o
$proveedor[] // autoincrementa solo
  #3 (permalink)  
Antiguo 21/02/2011, 10:31
 
Fecha de Ingreso: febrero-2011
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: FOREACH: problema con impresion de lineas

ya lo he conseguido he eliminado el foreach y he metido la linea en el while, y se incrementa solo no he necesitado poner un ++ el codigo ha quedado asi
Código:
<?php
	session_start();
	


if(isset($_POST['aceptar'])){
if($_POST['aceptar']){
header("Content-type: image/jpg");	
include('../Conexion.php');
include "../libchart/classes/libchart.php";		
			
    
    $fechai =$_POST["fechai"];
    $fechaf =$_POST["fechaf"];
    
	

				
  
                $consulta ="SELECT p.nombre, count(*) from modelos m, proveedores p where p.codproveedores = m.proveedores_codproveedores and m.Fecha_Adquisicion between '" .$fechai. "' and '" .$fechaf. "' group by  m.proveedores_codproveedores"; 
                $resultado = mysql_query($consulta);
				
				
			 	$chart = new VerticalBarChart(500,250);
	
	$dataSet = new XYDataSet();
	
				
				 while($filas=mysql_fetch_row($resultado)){
							
							 $proveedor[i]=$filas[0];
							 
							$numero[i]=$filas[1];
							
						
	$dataSet->addPoint(new Point($proveedor[i], $numero[i]));
				}
				 

			 
				 
				
	

	

	
	$chart->setDataSet($dataSet);
	
	$chart->setTitle("Coches comprados a proveedores");
	$chart->render();
		
   }}	  
?>
<html> 
	<head> 
		<link rel="stylesheet" href="../ejecucion.css" type="text/css"> 
		<title>Proyecto Concesionario</title> 
	</head> 
	
	<body> 
			<div id="cabecera">
		<img src="../cabecera.jpg">
		</div>

		
		<h1>Grafico de coches por proveedor</h1>
		<hr> 
	
	<form name="cochesporvendedor" method="post">
			<div id="volver">
				<input type="submit" name="Volver" value="Volver" onClick="this.form.action='../menus/menugraficos.php';this.form.target='_self'">
			</div> 
        <table>
			<tr>

				<td><label>fecha inicio</label></td><td><p><input type="text" name="fechai" id="fechai" size="15" maxlength="45"/></td></tr>

			<tr>

				<td><label>fecha fin</label></td><td><input type="text" name="fechaf" id="fechaf" size="15" maxlength="45"/></td></tr>

			<tr>
			
			<tr>
				<td><input type="submit"  name="aceptar" value="Aceptar" /></td><td><a href="../menus/menugraficos.php"><input type="reset"  name="cancelar" value="Cancelar" /></a></td>
			</tr>					
        </table>

                        
                   

                            

                    </form>


	<div id="pie">
		<img src="../pie.jpg">
		</div>
		
			
		
	</body> 
</html>

Etiquetas: foreach, impresion, lineas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:11.