Jump to content

Variáveis Undefined?


Daniivo
 Share

Go to solution Solved by Daniivo,

Recommended Posts

boas tardes.

estou a fazer uns Gets que uma outra pagina, mas ele esta a me dar erro em todas a variáveis que crio :S

Notice: Undefined variable: id_alterar in C:\wamp\www\includes\aseguradoras_insertar.php on line 12


<?php

//verifica se é para editar ou criar novo
$id_alterar = null;
$alterar	= null;
if(!empty($_GET["id"])){
$id_alterar = $_GET["id"];
$alterar = false;
}
if($id_alterar != ""){
	$alterar = true;	

$tb=mysql_query("select * from aseguradoras WHERE id_aseguradoras='$id_alterar'");
$ln = mysql_fetch_array($tb);
$name				=$ln['aseguradora'];
$direccion			=$ln['direccion'];
$rif				=$ln['rif'];
$name_comercial		=$ln['name_comercial'];
$email				=$ln['email'];
$web				=$ln['web'];
$fax				=$ln['fax'];
$tel				=$ln['tel'];
$clave_corredor		=$ln['clave_corredor'];
//$activo=$ln['activo'];


}

echo $name;	
?>


		<div class="CollapsiblePanelTab" tabindex="0">
		  <h2 align="center">Insertar Aseguradora</h2>
		</div>
		  <form method="post" id="customForm" enctype="multipart/form-data action="includes/aseguradoras_insertar_BD.php">

	<div style=" float:left">
	   <div>
			<label for="name">Nombre</label><br />
			<input name="name" type="text" class="input" id="name" value="<?php echo $name ?>" size="32" />
			<span id="nameInfo"></span>
		</div>
		<div>
			<label for="name_comercial">Nombre Comercial</label><br />
			<input  style="color:#000" id="name_comercial" name="name_comercial" type="text" value="<?php echo $name_comercial ?>" /><br />
			<span id="nameInfo"></span>
		</div>

		<div>
			<label for="email">E-mail</label><br />
			<input id="email" name="email" type="text" value="<?php echo $email ?>" /><br />
			<span id="emailInfo"></span>
		</div>
		<div>
			<label for="rif">RIF</label><br />
			<input id="rif" name="rif" type="text" /><br />
			<span id="nameInfo"></span>
		</div>


	 </div>

	   <div style="float:right; width:50%",>
		<div>
			<label for="clave_corredor">Clave Corredor</label><br />
			<input id="clave_corredor" name="clave_corredor" type="text" /><br />
			<span id="nameInfo"></span>
		</div>

		<div>
			<label for="fax">Fax</label><br />
			<input id="fax" name="fax" type="text" /><br />
			<span id="nameInfo"></span>
		</div>

		<div>
			<label for="tel">Telefono</label><br />
			<input id="tel" name="tel" type="text" /><br />
			<span id="nameInfo"></span>
		</div>

		<div>
			<label for="direccion">Direccion</label><br />
			<input id="direccion" name="direccion" type="text" /><br />
			<span id="nameInfo"></span>
		</div>

		<div>
			<label for="web">Web</label><br />
			<input id="web" name="web" type="text" /><br />
			<span id="nameInfo"></span>
		</div>
		</div>
		<div id="clear">
		<div>
		<div>

			<label for="message">Message</label><br />
			<textarea id="message" name="message" cols="" rows=""></textarea><br />
		</div>
		<div>

		<?php
			if($alterar){
				echo "<input type='hidden' name='alterar' value='sim'/>";
				echo "<input type='hidden' name='id_alterar' value='$id_alterar'/>";
			}
		?>

			<input id="send" name="send" type="submit" value="Send" />
		</div>
	</form>
</div>
<script type="text/javascript" src="../js/jquery.js"></script>
<script type="text/javascript" src="../js/validation.js"></script>

antes eu n tinha o primeiro IF mas meti para tirar o erro que dava no get(Id)....

alguém sabe o que esta a falhar?

Edited by Daniivo
geshi + php formatado
Link to comment
Share on other sites

Isso não é um erro, é apenas um warning. É possível fazer com que os warnings (avisos) deixem de aparecer, e esse não vai criar problemas. Mas ainda assim é bom que eles deixem de aparecer.

Qual é a linha 12? 🙂

  • Vote 1

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Isso não é um erro, é apenas um warning. É possível fazer com que os warnings (avisos) deixem de aparecer, e esse não vai criar problemas. Mas ainda assim é bom que eles deixem de aparecer.

Qual é a linha 12? 🙂

line 12 -> if($id_alterar != ""){

mas se ele esta a avisar, è porque estao com receios lool...

Edited by Daniivo
Link to comment
Share on other sites

Basicamente, esse aviso significa que estás a tentar aceder a uma variável que não foi inicializada. Felizmente, o PHP trata esses erros para que o programa não bloqueie, mas em outras linguagens isso poderia fazer o programa crashar. Por isso, só tens de lhe atribuir um valor antes de a usar. 🙂

   $id_alterar = "";
   //$alterar    = null;
   if(!empty($_GET["id"])){
   $id_alterar = $_GET["id"];
   $alterar = false;
   }

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

scorch

<input id="email" name="email" type="text" value="<?php echo $email ?>" />

isto nao devia funcionar??

a variavel fora do input imprime :S

ele nao me le PHP dentro do value!!!, a questao è pq?

Edited by Daniivo
Link to comment
Share on other sites

só existe duas razões para o HTML não ser correctamente criado

- ou a variável não está declarada

- ou a variável não tem valor nenhum

agora para saber qual é, só com o código completo (desde o início) é que dá para te responder

valor tem!! porque eu faço echo fora o value e tem valor!

como assim variável nao esta declarada???

esta a dar o mesmo erro de antes :s ou seja vou ter que meter um valor nas variáveis todas :/ tou a programar em C ou em php?

isto a 1 ano atras nao era assim!!

Edited by Daniivo
Link to comment
Share on other sites

Notice: Undefined variable: name in C:\wamp\www\includes\aseguradoras_insertar.php on line 33 Call Stack # Time Memory Function Location 1 0.0004 368104 {main}( ) ..\index.php:0 2 0.0077 396184 include( 'C:\wamp\www\includes\aseguradoras_insertar.php' ) ..\index.php:95

Insertar Aseguradora

Nombre

( ! ) Notice: Undefined variable: name in C:\wamp\www\includes\aseguradoras_insertar.php on line 43 Call Stack #TimeMemoryFunctionLocation 10.0004368104{main}( )..\index.php:0 20.0077396184include( 'C:\wamp\www\includes\aseguradoras_insertar.php' )..\index.php:95 " size="32" />

Nombre Comercial

( ! ) Notice: Undefined variable: name_comercial in C:\wamp\www\includes\aseguradoras_insertar.php on line 48 Call Stack #TimeMemoryFunctionLocation 10.0004368104{main}( )..\index.php:0 20.0077396184include( 'C:\wamp\www\includes\aseguradoras_insertar.php' )..\index.php:95 " />

E-mail

( ! ) Notice: Undefined variable: email in C:\wamp\www\includes\aseguradoras_insertar.php on line 54 Call Stack #TimeMemoryFunctionLocation 10.0004368104{main}( )..\index.php:0 20.0077396184include( 'C:\wamp\www\includes\aseguradoras_insertar.php' )..\index.php:95 " />

Link to comment
Share on other sites

acho que respondeste à tua própria pergunta ...

olha bem para o teu código indentado

//verifica se é para editar ou criar novo
$id_alterar = null;
$alterar = null;
if(!empty($_GET["id"])){
 $id_alterar = $_GET["id"];
 $alterar = false;
}

// vamos supor que $id_alterar tem o valor ""
// é a mesma coisa que não existir código dentro deste if

if($id_alterar != ""){
//  $alterar = true;

//  $tb=mysql_query("select * from aseguradoras WHERE id_aseguradoras='$id_alterar'");
//  $ln = mysql_fetch_array($tb);
//  $name =$ln['aseguradora'];
//  $direccion =$ln['direccion'];
//  $rif =$ln['rif'];
//  $name_comercial =$ln['name_comercial'];
//  $email =$ln['email'];
//  $web =$ln['web'];
//  $fax =$ln['fax'];
//  $tel =$ln['tel'];
//  $clave_corredor =$ln['clave_corredor'];
//  $activo=$ln['activo'];
}

// onde tens tu definido a variável $name ???

se tens informação a ser apresentada na resposta de certesa que não é do echo que vem após o código apresentado por mim

foi exactamente por isso que pedi para fazeres novamente post do teu código ... existe algo que falta !!!!

IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

so te aprece isso de codigo??? o html nao te aparece?

desculpa eu nao percebi muito bem o que estas a dizer exatamente.

tens razao o if esta mal feito!!!

a questao è se nao vier Id no GET aquelas variveis nao tem que existir!!! mas se elas nao existirem da a notice, o que recomendas???

o problema de nao dar echo dentro do value preexiste.

Link to comment
Share on other sites

o que estou a dizer que o valor da variavel "$id_alterar" tem o valor de "" quando chega ao if ... logo a variável $name não se encontra definida

isto é a única conclusão que se pode tirar atraves da informação fornecida.

para uma resposta mais completa, faz post do código que tens agora ...

IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

ja te disse que entra dentro do If, tanto que entra, que esta a imprimir fora do value em qualquer sitio da pagina dentro ou fora do If o valor que pretendo!! podes dizer 30 vezes que que nao vaz passar a ter razao!

mas obrigado na mesma por tentares.

cya

Edited by Daniivo
Link to comment
Share on other sites

  • Solution

RESOLVIDO

O problema era que na base de dados tinha espaços em branco "------------------nome", e a input tinha tamanho para 30 e picos visíveis caracteres.

lol enfim è estas coisas que faz a pessoa perder a pica de fazer alguma m****, perdi umas 3 horas nisto!!!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.