Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Michael.Dev

Problemas com PHP

Recommended Posts

Estou desenvolvendo um Sistema em PHP OO, e estou com o seguinte erro quando instancio um objeto

 

Notice: Undefined variable: arr in C:\wamp\www\Auto\admin\model\DicasDAL.class.php on line 75]

 

Call Stack

# Time Memory Function Location

1 0.0008 380720 {main}( ) ..\FrmCadDicas.php:0

2 0.0075 424920 DicasDAL->Listar( ) ..\FrmCadDicas.php:138

 

Agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

se você não mostrar o trecho de código que originou o erro, fica impossível sugerirmos algo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

William bruno me perdoe cara esqueci de postar o codigo, mas ta aqui:

 

  
 <?
               require("../model/DicasDAL.class.php");
               $Obj  = new DicasDAL();
               $Cont = $Obj->Listar();


                  for($i = 0; $i < count($Cont); $i++)
                  {
                        ?>
                       <tr class="even gradeC">
                        <td>
                        <input name="Check[]" id="check1" value="<?=$Cont[$i]->getId();?>" type="checkbox" />
                     	 </td>
                        <td><?=$Cont[$i]->getId();?></td>
                        <td><?=$Cont[$i]->getTitulo();?></td>
                        <td>
                        <a href="FrmEditNoticia.php?CodNot=<?=$Cont[$i]->getId();?>"><img title="Editar Registro" src="../images/icones/image45.png"></a>
                           
<a href="javascript:if(confirm('Deseja Excluir esse Registro ?')){location='../Controller/DicasController.class.php?acao=Excluir&id=<?=$Cont[$i]->getId();?>';}">
<img title="Excluir Registro" src="../images/icones/image30.png"></a>
		</td>
	  </tr>
	  <?
               }
         ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Este é minha "VIEW" onde trago os resultados do veiculo selecionado:

 

  <?
  try
  {
           require_once("../model/VeiculoDAL.class.php");
	   $ObjVeiculo   = new VeiculoDAO();
	   $ArrayVeiculo =  $ObjVeiculo->ListarPorID((int)$_GET['CodVeiculo']);

	   for($i = 0; $i < count($ArrayVeiculo); $i++)
	   { 
     ?>

    <form action="../Controller/ControllerVeiculo.class.php?acao=Inserir" method="post" class="form label-inline uniform"/>
   		<div class="field">
           <input name="idCliente" value="<?=$_SESSION['CodUsu']?>" type="hidden" />
               <label for="Tipo">Tipo de Veiculo </label>
               <select id="tipo" class="medium" name="Tipo">
                 <option selected="selected" />Selecione o Tipo</option>
                    <? 
                        $ObjMarca = new MenuCombo();
                        $ObjMarca->geraTipo("");
                    ?>
          		</select>
            </div>
           <div class="field" >
               <label for="Marca">Marca </label>
               <select id="Marca" name="Marca" class="medium" onChange="alimentaCombo(this);">
          		     <option selected="selected" />Selecione a Marca</option>
                    <?
                        $ObjMarca = new MenuCombo();
                        $ObjMarca->geraMarca("");
                    ?>
               </select>
          </div>
          <div class="field" >
          <div class="ModeloVec" id="Modelo"></div>
          </div>
           <div class="field">
              <label for="Versao">Versão </label> <input  name="Versao" required="required" value="<?=$ArrayVeiculo[$i]->getVersao();?>" size="27" type="text" class="medium" />
          </div>
          <div class="controlset field">
	   <span class="label">Fabricação </span>
                <div class="controlset-pad">
			 <input name="Fabricacao" value="Nacional" <?=$ArrayVeiculo[$i]->getStatus() ? ' checked="checked" ' : ''?>  type="radio" /> <label>Nacional</label><br />
			 <input name="Fabricacao" value="Importado" <?=$ArrayVeiculo[$i]->getStatus() ? ' checked="checked" ' : ''?>  type="radio" /> <label>Importado</label><br />
			 </div>
	   </div>
           <div class="field phone_field">
               <label for="Situacao">Situação </label>
               <select id="type" name="Situacao" class="medium">
                    <option value="Novo" selected="selected" />Novo</option>
                    <option value="Semi-Novo"/>Semi-Novo</option>
                    <option value="Usado"/>Usado</option>
                </select>
          </div>
          <div class="field">
              <label for="Ano">Ano Fab/Modelo </label> <input id="Data" value="<?=$ArrayVeiculo[$i]->getAno();?>"  name="Ano" size="27" type="text" class="medium" />
          </div>
          <div class="field">
               <label for="type">Portas </label>
               <select id="Portas" class="medium" name="Portas">
          		     <option value="2" selected="selected" />2</option>
                    <option value="4"/>4</option>
               </select>
	   <div class="field">
              <label for="Cor">Cor </label> <input name="Cor" value="<?=$ArrayVeiculo[$i]->getCor();?>" size="27" type="text" class="large" />
          </div>
          <div class="field">

               <label>Combustivel </label>
               <select class="medium" name="Combustivel">
          		     <option selected="selected" />Tipo de Combustivel</option>
                    <option value="Gasolina"/>Gasolina</option>
                    <option value="Alcool"/>Alcool</option>
                    <option value="Diesel"/>Diesel</option>
                    <option value="Flex"/>Flex</option>
                    <option value="GNV"/>GNV</option>
                    <option value="GNV Àlcool"/>GNV Àlcool</option>
                    <option value="GNV Flex"/>GNV Flex</option>
                    <option value="GNV Gasolina"/>GNV Gasolina</option>
               </select>

	   </div>
          <div class="field">
              <label>Quilometragem </label> <input name="Km" value="<?=$ArrayVeiculo[$i]->getKm();?>" size="27" type="text" class="large" />
          </div>
         <div class="field">
              <label>Valor á Vista </label> <input id="vista" name="VrVista" value="<?=$ArrayVeiculo[$i]->getVrVista();?>" size="27" type="text" class="large" />
         </div>
           <div class="field">
              <label>Valor Financiado </label> <input id="prazo" name="VrPrazo" value="<?=$ArrayVeiculo[$i]->getVrPrazo();?>" size="27" type="text" class="large" />
          </div>
            <div class="field">
              <label>Inserir Imagens  </label> <a class="btn-mini btn-plus btn-red" onClick="return PopUp();"><span></span></a>
          </div>
          <div class="field">
              <label for="Descricao">Descrição </label> <textarea rows="7" cols="50" id="Descricao" name="Descricao"><?=$ArrayVeiculo[$i]->getDescricao();?></textarea>
          </div>
          <div  class="buttonrow" >
           <button type="submit" class="btn">Cadastrar</button>
          </div>
       </form>
     <?
       	   }//fecha for

  }catch(Exception $e)
  {
	 $e->getMessage();
  }
      ?> 

 

Este é o método Listar por Id que estou utilizando

 

public function ListarPorID($idVeiculo)
	{
		try
		{
			$smtp = $this->conn->prepare("SELECT  v.idVeiculo, 
                                                                     v.idModelo,
                                                                     v.idMarca, 
                                                                     v.Versao,
                                                                     v.Nacionalidade,
                                                                     v.Situacao,
                                                                     v.AnoModelo,
                                                                     v.Portas,
                                                                     v.Cor,
                                                                     v.Combustivel,
                                                                     v.Quilometragem,
                                                                     v.VrVista, 
                                                                     v.VrFinanciado,
                                                                     v.Observacao,
                                                                     v.Contador,
                                                                     v.Status,
                                                                     ma.idMarca,
                                                                     ma.Descricao,
                                                                     mo.Descricao as Modelo,
                                                                     mo.idMarca
                                                   FROM veiculo as v
                                                   INNER JOIN  marca  as ma  ON ma.idMarca = v.idMarca 
                                                   INNER JOIN  modelo as mo  ON mo.idMarca = v.idMarca 
                                                   WHERE v.idVeiculo = ? 
                                                   AND   v.Status = 'S'
			");
			$smtp->bindValue(1, $idVeiculo);
			$smtp->execute();

			if($Obj = $smtp->fetch(PDO::FETCH_OBJ))
			{
				if ($Obj->Situacao == 'Importado') {
					$situacao = TRUE;
				} else {
					$situacao = TRUE;
				}

				$ObjVeiculo = new Veiculo();
				$ObjVeiculo->setId($Obj->idVeiculo);
				$ObjVeiculo->setModelo($Obj->Modelo);
				$ObjVeiculo->setMarca($Obj->Descricao);
				$ObjVeiculo->setVersao($Obj->Versao);
				$ObjVeiculo->setFabricacao($Obj->Nacionalidade);
				$ObjVeiculo->setAno($Obj->AnoModelo);
				$ObjVeiculo->setSituacao($Obj->Situacao);
				$ObjVeiculo->setCombustivel($Obj->Combustivel);
				$ObjVeiculo->setPortas($Obj->Portas);
				$ObjVeiculo->setCor($Obj->Cor);
				$ObjVeiculo->setKm($Obj->Quilometragem);
				$ObjVeiculo->setVrVista($Obj->VrVista);
				$ObjVeiculo->setVrPrazo($Obj->VrFinanciado);
				$ObjVeiculo->setDescricao($Obj->Observacao);
				$ObjVeiculo->setStatus($situacao);
			}
			return $ObjVeiculo;
		}
		catch(PDOException $e){
			print 'Erro: '.$e->getMessage();
		}
	}

 

Este é o erro que me apresenta/:

 

Notice: Undefined variable: ObjVeiculo in C:\wamp\www\Auto\admin\model\VeiculoDAL.class.php on line 186

Call Stack

# Time Memory Function Location

1 0.0146 404136 {main}( ) ..\FrmDetalhes.php:0

2 0.0275 572984 VeiculoDAO->ListarPorID( ) ..\FrmDetalhes.php:116

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código ja esta postado em cima mas vou mostra a linha do erro:

 

require("../model/VeiculoDAL.class.php");
 [color="#FF0000"]$ObjVeiculo   = new VeiculoDAO();[/color] //o erro apresentado esta aqui!!!
 $ArrayVeiculo =  $ObjVeiculo->ListarPorID((int)$_GET['CodVeiculo']);

 for($i = 0; $i < count($ArrayVeiculo); $i++)
 { 

 

Notice: Undefined variable: ObjVeiculo in C:\wamp\www\Auto\admin\model\VeiculoDAL.class.php on line 186

Call Stack

# Time Memory Function Location

1 0.0146 404136 {main}( ) ..\FrmDetalhes.php:0

2 0.0275 572984 VeiculoDAO->ListarPorID( ) ..\FrmDetalhes.php:116

Compartilhar este post


Link para o post
Compartilhar em outros sites

A classe VeiculoDAO está definida como VeiculoDAO ou VeiculoDAL?

O arquivo está salvo como DAL, enquanto que na sua view você instancia um objeto da classe DAO.

 

Lembre-se, o PHP não faz restrição quanto ao nome do arquivo ser diferente do nome da classe, mas é importante seguir o padrão para evitar problemas como esse.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.