Ir para conteúdo

POWERED BY:

Arquivado

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

visitante_php

erro na classe

Recommended Posts

olha eu vi as aulas sobre classes em aritgos tutos etc, e fui criar a minha porem ha um erro

<?phprequire ("config.php");class Mysql{ var $id;  var $nome;  var $tabela = "teste1";  function conectar($db){   $this->seleciona = mysql_select_db($db);  if($this->seleciona){			 echo "database selecionada ".$i."<br>";		}else{			 echo "erro na conexao: <font color='red'>".mysql_error()."</font><br>";		} }  function inserir($nome){ 	$query= "INSERT INTO ".$this->tabela." (id, nome) VALUES('', '".$this->nome."');";		$this->insere = mysql_query($query);		if($this->insere){			 echo "dados inseridos ".$i."<br>";		}else{			 echo "erro na insercao dos dados: <font color='red'>".mysql_error()."</font><br>";		}  }  function deletar($campo, $valor){  $query = "DELETE FROM ".$this->tabela." WHERE ".$campo."= '".$valor."';";  $this->delete = mysql_query($query);    if($this->delete){ 	 echo "Dado deletado<br>";    }else{ 		 echo "erro no MySQL: <font color='red'>".mysql_error()."</font><br>";    }   }}?>

 

 

 

 

o erro eh q tento atualizar ou zera o campo da tabela, nao ou muda

 

 

outro arquivo

config.php

 

<?php$host = "127.0.0.1";$user = "root";$pass = "";function conexao($host, $user, $pass){$conecta = mysql_connect($host, $user, $pass);}conexao($host, $user, $pass);?>

 

 

deletar.php

 

 

<?php require("mysql.class.php"); ?><?php $classeMysql = new Mysql; ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body><?php if(!$_POST['id']){?><form id="form1" name="form1" method="post" action="<?php $_SERVER['PHP_SELF']; ?>">  nome:   <label>  <input name="id" type="text" id="id" />  </label>  <p>	<label>	<input type="submit" name="Submit" value="Submit" />	</label>  </p></form><?php}else{$classeMysql->conectar("testes");$classeMysql->deletar("nome",$_POST['id']);}?></body></html>

 

 

 

 

 

 

index.php ou inserir.php

 

 

<?php require("mysql.class.php");?><?php $classeMysql = new Mysql; ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title><script type="text/JavaScript"><!--function MM_jumpMenu(targ,selObj,restore){ //v3.0  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");  if (restore) selObj.selectedIndex=0;}//--></script></head><body><?php if(!$_POST['Submit']){?><form id="form1" name="form1" method="post" action="<?php $_SERVER['PHP_SELF'];?>">  <label>  <select name="menu1" onchange="MM_jumpMenu('parent',this,0)">	<option value="?num=1">1</option>	<option value="?num=2">2</option>	<option value="?num=3">3</option>	<option value="?num=4">4</option>  </select>  </label>  <label><br />  <br /><?php  $i=0;  do {  ?>  nome:   <input type="text" name="nome<?php echo $i;?>" />  <?php   $i++;   }while($i < $_GET['num']);?></label>  <p>	<label>	<input name="Submit" type="submit" id="Submit" value="Submit" />	</label>  </p>  <p> </p></form><?php}else{//$nome = array();  $i=0;//$classe = new Mysql;$classeMysql->conectar("testes");do { //$nome[$i] =   $_POST["nome".$i];echo   '$_POST["nome'.$i.'"]';$classeMysql->inserir($_POST['nome$i']);   $i++;  }while ($i<$_GET['num']); }?></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não endendi sua pergunta você que saber o pq nao atualiza ou zera o campo da tabela é isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Igor, especifica melhor seu problema ai......sua classe está apenas inserindo e deletando os dados...O que você quer a respeito de atualizar?especifica melhor ai, fica mais facil pra te ajudar.....e ele nao emite nenhuma mensagem de erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sua funcao ta assim:

 

function deletar($campo, $valor){$query = "DELETE FROM ".$this->tabela." WHERE ".$campo."= '".$valor."';";$this->delete = mysql_query($query);}
primeiro: tem "; onde nao deve: $campo."= '".$valor."';";

 

segundo: ela ta pegando os dados da sua tabela, mas o campo NOME, é o campo que contem o ID???

 

$classeMysql->deletar("nome",$_POST['id']);
acho q nao ne, pq acima você insere um nome no campo nome, e um id no campo ID

 

$query= "INSERT INTO ".$this->tabela." (id, nome) VALUES('', '".$this->nome."');";
ta muito confuso isso ai.....e sua duvida tb.....mas ve se isso ajuda.

 

Att,

Andrey Moretti

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao, obrigado por fazer essas observacoes, eh minha primeira classe deve ter mais erros q pecados no mundo :P, porem minha duvida maior eh na funcao de atualizacao....acontece o seguinte, nao atualiza, muda o campo pra ficar sem dado(branco)....

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.