Jump to content
Fórum Script Brasil
  • 0

Passar varriavel pra dentro de uma classe (resolvido)


Question

//Resolvido, mas aqui porque ninguém responde mais minhas perguntas? :blink:

Bom fim de semana a todos,

Continuando meu estudo de classe criei uma classe simples de coneexão mysql e agora estou tentando fazer uma classe insert (sem ser por herança), no entanto estou tento problemas em passar o metodo de conexão de uma classe para outra mesmo o metdo sendo public

class mysql

class conexaoMySQL {
    protected $host;
    protected $user;
    protected $senha;
    public $conn;
    // Controi os metodos
   public function __construct($host, $user, $senha) {
        $this->host = $host;
        $this->user = $user;
        $this->senha = $senha;
        $this->banco = $banco;
        $this->query = $query;
        $this->conn = $conn;
    }
    // Testa conexao e conecta se sim se não joga pra funcao erro
    function conecta() {
        if ($this->conn = mysql_connect($this->host, $this->user, $this->senha)) {
            return $this->conn;
        } else {
            return $this->erro();
        }
  ....
class insert
class cadastro {
    protected $tabela;
    protected $colunas;
    protected $valores;
    protected $sqlInserir;
    protected $enviado;
    protected $urlgo;
    protected $conexao;

    function __construct($tabela, $coluna, $valores, $enviado, $urlgo) {
        $this->tabela = $tabela;
        $this->colunas = $colunas;
        $this->valores = $valores;
        $this->enviado = $enviado;
        $this->urlgo = $urlgo;
    }
    function inserirCadastro() {
        if ((isset($this->enviado)) && ($this->enviado == "sim")) {
            $sqlInserir = sprintf("INSERT INTO".$this->tabela." (".$this->colunas.") VALUES (".$this->valores.")");

            mysql_select_db(_BANCO_, $this->conn);
            mysql_query($sqlInserir, $this->conn) or die(mysql_error());

            echo "&lt;script>window.alert("._INSERTSUCESSO_.");</script>";
            header("location: ".$this->urlgo);
        }
    }
}
instancia
$objtCad = new cadastro("es_configs","titulo","teste","sim","acoes.php?acao=cadastroSucesso");
$objtCad->inserirCadastro();
// retorno
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource on line 35

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource on line 36

O problema parece ser que o $this->conn nas linhas do mysql_select_db e mysql_query não funciona, achei que por ter declarado o mesmo como public poderia passar ele pra qualquer outra classe carregada posteriormente à aquela sem problemas, no entanto parece que não.

Como faço para passar está varriável e porque assim não funciona?

Agradeço desde já :)

Edited by Norivan Oliveira
Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Cloud Computing


  • Forum Statistics

    • Total Topics
      148692
    • Total Posts
      644524
×
×
  • Create New...