Jump to content
perfectraider99

Não consigo conectar meu sistema de upload de imagens ao servidor

Recommended Posts

Galera bom dia, recentemente me pediram pra fazer um sistema de postagem para um site de carros . 

pesquisei formas de fazer e encontrei um projeto de upload de imagens 

fiz tudo certinho no local host e funcionou perfeitamente mas quando fui colocar no servidor nada funcionou, nem enviava o formulario nem amostrava os produtos.

por favor galerinha estou a muito tempo tentando resolver esse problema . 

aqui tá o meu codigo 

 

index

 

 

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
    body{
        font-family: arial;
    }
    section{
        background-color: rgb(123,104,238,.4);
        width: 70%;
        margin: auto;
    }
    input, label, textarea{
        display: block;
        width: 100%;
        height: 30px;
    }
    label{
        line-height: 30px;
        margin-top: 10px;
    }
    textarea{
        height: 150px;
    }
    form{
        
        width: 60%;
        margin: auto;
        box-sizing: border-box;
        padding: 20px;
    }
    #botao{
        margin-bottom: 10px;
        width: 50%;
        background-color: rgba(0,0,0,.8);
        color: white;
        height: 40px;
        cursor: pointer;
        border: none;
        font-size: 15pt;
    }
    h1{
        text-align: center;
    }
    #foto{
        margin-top: 20px;
        margin-bottom: 20px;
    }

    a{
        background-color: rgb(0,255,127);
        display: block;
        width: 220px;
        height: 50px;
        color: black;
        text-decoration: none;
        float: right;
        text-align: center;
        line-height: 50px;
        margin: 20px;
        border: 1px solid rgba(0,0,0,.2);
    }
    </style>
</head>
<body>
    <section>
    <a href="produtos.php">Ver todos os produtos</a>
    <form method="POST" enctype="multipart/form-data">
        <h1>ENVIO DE IMGS</h1>
        <label for="nome">Nome do Produto</label>
        <input type="text" name="nome" id="nome">
        <label for="des">Descrição</label>
        <textarea name="desc" id="desc"></textarea><br>

        

        <input type="file" name="foto[]" multiple id="foto">
        <input type="submit" id="botao">
    </form>
    </section>
</body>
</html>


produtos : 


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style type="text/css">
    section{
        width: 70%;
        margin: auto;
        font-family: arial;
    }
    div{
        width: 15%;
        float: left;
        padding: 1%;
        background-color: rgb(123,104,238,.4);
        margin: 10px;
    }
    img{
        width: 100%;
        height: 150px;
    }

    h2{
        font-size: 12pt;
        color: white;
        text-align: center;
        background-color: rgba(0,0,0,.5);
        padding: 10px 0px;
        font-weight: normal;
    }
    p{
        font-size: 10pt;
    }
    </style>
</head>
<body>
    <section>

    <?php 
require 'classes/Produto_class.php';
$p = new Produto_class('formulario_produtos','infinityfree.net','root', '99583460');  <- aqui ta a parte do banco de dados
$dadosProduto = $p->buscarProdutos();


if (empty($dadosProduto)) 

{


echo 'Ainda não há produtos aqui';
    
}else
{

foreach ($dadosProduto as $value)

 {
        ?>

        <a href="exibir_produto.php">
            <div>
                <img src="imagens/<?php echo $value['foto_capa']   ?>">            
                <h2><?php echo $value['nome_produto']   ?></h2>
            </div>
        </a>
    <?php
}


}


    ?>
        
    </section>
</body>
</html>


e aqui tá a parte do banco de dados 


: 



<?php

class Produto_class{

private $pdo;
public function __construct($dbname, $host, $user, $senha)

{
    try 
    {
       $this->pdo = new PDO("mysql:dbname=".$dbname.";host=".$host,$user, $senha);        
        } catch (PDOException $e) {

            echo 'erro com banco de dados :'.$e->getMessage();

        } catch (Exception $e) {

            echo 'erro Generico :'.$e->getMessage();
        }
    }
    public function enviarProduto($nome, $descricao, $fotos = array())
{

    //INSERIR PRODUTO  ( TABELA DO PRODUTO )

$cmd = $this->pdo->prepare('INSERT INTO produtos(nome_produto, descricao) values (:n, :d)');
$cmd->bindValue(':n', $nome);
$cmd->bindValue(':d', $descricao);

$cmd->execute();
  $id_produto = $this->pdo->LastInsertId();


 //INSERIR AS IMAGENS DO PRODUTO (TABELA DE IMAGENS)
    if(count($fotos) > 0 )// Se veio imagens
        
        {

                for ($i=0; $i < count($fotos); $i++) 

                { 
                    $nome_foto = $fotos[$i];

        $cmd = $this->pdo->prepare('INSERT INTO imagens (nome_imagem, fk_id_produto) values (:n, :fk)');
        $cmd->bindValue(':n', $nome_foto );
        $cmd->bindValue(':fk', $id_produto);
        $cmd->execute();

                }


     

        
        }     
}

     public function buscarProdutos()//TODOS

{ 
 
 $cmd = $this->pdo->query('SELECT *,
    (SELECT nome_imagem from imagens where fk_id_produto = produtos.id_produto LIMIT 1) as foto_capa FROM produtos');


 if($cmd->rowCount() > 0)

 {
           $dados = $cmd->fetchAll(PDO::FETCH_ASSOC);
 }else
 {

     $dados = array();
 }
     return $dados;
}

   

     public function buscarPrdutoPorId($id)

     {


     }


     public function buscarImagensPorId($id)

     {

         
     }

}


 

Já troquei a variavel $p = new Produto_class no arquivo que eu mandei pro servidor ..

Share this post


Link to post
Share on other sites

Prováveis erros:

 

1 - Erro de autenticação (nome do banco, host usuário e senha).

'formulario_produtos' é nome do banco mesmo? Parece ser de tabela.

 

2 - Não ativado a extensão PDO.

Para verificar, crie um arquivo PHP e suba na raiz e depois acesse pela URL com o código abaixo:

<?php

print_r(PDO::getAvailableDrivers());

Irá retornar um array com os drivers suportados.

 

3 - Seu formulário de inserção de fotos está sem o ACTION, que é pra onde você está enviando as informações do seu POST. Geralmente chama um arquivo.php que valida e depois chamar a classe para fazer o INSERT.

Share this post


Link to post
Share on other sites
Em 19/06/2019 at 12:20, marcosmarcolin disse:

olhei aqui e apareceu isso . 

Array ( [0] => mysql [1] => sqlite )

Coloquei um arquivo zippado com todas as pastas nesse link www.planetaveiculosba.com.br/projeto.zip

po man grato pela ajuda .

 

 

Share this post


Link to post
Share on other sites

olhei aqui e apareceu isso . 

Array ( [0] => mysql [1] => sqlite )

Coloquei um arquivo zippado com todas as pastas nesse link www.planetaveiculosba.com.br/projeto.zip

po man grato pela ajuda .

Share this post


Link to post
Share on other sites

Olá, boa noite!

 

No começo do arquivo ative os erros do php e poste o resultado que está aparecendo no seu servidor de produção e localhost.

 

<?php

	error_reporting(E_ALL);
	ini_set('display_errors', 'On');
?>
<!DOCTYPE html>  
<html>  
  ... seu código

 

Share this post


Link to post
Share on other sites

Quando eu tento preencher o formulario dá isso . 

 


Warning: require(classes/Produto_class.php): failed to open stream: No such file or directory in /storage/ssd4/628/9862628/public_html/system/index.php on line 124

Warning: require(classes/Produto_class.php): failed to open stream: No such file or directory in /storage/ssd4/628/9862628/public_html/system/index.php on line 124

Fatal error: require(): Failed opening required 'classes/Produto_class.php' (include_path='.:/usr/share/pear:/usr/share/php') in /storage/ssd4/628/9862628/public_html/system/index.php on line 124

 

 

quando eu abro a página de produtos dá isso :

 

Warning: require(classes/Produto_class.php): failed to open stream: No such file or directory in /storage/ssd4/628/9862628/public_html/system/produtos.php on line 49

Warning: require(classes/Produto_class.php): failed to open stream: No such file or directory in /storage/ssd4/628/9862628/public_html/system/produtos.php on line 49

Fatal error: require(): Failed opening required 'classes/Produto_class.php' (include_path='.:/usr/share/pear:/usr/share/php') in /storage/ssd4/628/9862628/public_html/system/produtos.php on line 49

 

Desde já, muito obrigado irmão .

Share this post


Link to post
Share on other sites

O problema é no require abaixo, verifica as pastas corretamente e altere o diretório, não está encontrando o arquivo 'Produto_class.php'.

require 'classes/Produto_class.php';

 

 

Share this post


Link to post
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

  • Similar Content

    • By TheRonaldoStar
      Olá, Venho aqui de novo para tirar uma dúvida que creio eu ser muito simples porem não sei como aplicar!;
      Como diz no título do post eu gostaria de fazer um select de cadastros cujo o id do usuário online está nesta coluna,
      Porem neste campo contem 2 id separados por uma ' , '. Sendo assim não dar para mim fazer uma pesquisa com com a tag WHERE id ='Valor'
      Em fim eu quero ajuda para selecionar todos os cadastro cujo o id do usuário online está por EX: Sou o usuário 1 existe dois cadastros que tem meu id: [1, 2] e [2, 1];
      Alem de pesquisar todos os cadastros que tenha meu id nesta coluna eu quero que não tenha interferência ou listar cadastro do usuário 1 se eu for o usuário 21 por ex.
       
      Qual quer ajuda é bem vinda!
      Atenciosamente,
      ~Ronaldo
    • By Agnosticado
      Olá senhores, estou intrigado com uma coisa: tenho o seguinte código:
      $id_exame = "50296"; $pesquisa = "SELECT motivo, CASE WHEN motivo = 'Intensa superposição celular em mais de 75% de esfregaço' THEN 'A' WHEN motivo = 'Sangue em mais de 75% de esfregaço' THEN 'B' WHEN motivo = 'Artefatos de dessecamento mais de 75% de esfregaço' THEN 'C' ELSE 'TESTE' END AS opcao FROM insatisfatorio WHERE exame_id = '$id_exame' ORDER BY opcao ASC"; $linha = mysql_query($pesquisa); while ($pesquisa = mysql_fetch_array($linha) or die(mysql_error())){ echo $pesquisa["opcao"]; } Quando executo usando
       
      $linha = mysql_query($pesquisa);
                 while ($pesquisa = mysql_fetch_array($linha) or die(mysql_error())){
              echo $pesquisa["opcao"];
              echo "<br>";
       
       
      a saída é palavra "TESTE" que o default e não o texto "B" que corresponde a string da chamada do $id_exame = 50296.
       
      O ESQUISITO é que quando executo todo select que está na variável $pesquisa direto no SGBD dá certo e o texto "B" aparece normalmente.
      PQ DIABOS ISSO ACONTECE???
    • By Alandeoli
      Boa noite Pessoal!
       
       
      Estou criando uma tela de login, e passando os dados para uma pagina que vai se conectar ao AD, mas mesmo eu colocando os campos em branco a conexão esta passando como ok, segue os códigos se puderem me ajudar agradeço muito!
       
      Tela conexao:
       
      <?php   $adServer = "ldap://xxx.xxxx.xx.xx";   $ldap = ldap_connect($adServer); $username = $_POST['user']; $password = $_POST['pass'];   $ldaprdn = 'XXX' . "\\" . $username;   ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3); ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);   $bind = @ldap_bind($ldap, $ldaprdn, $password);   if($bind=true)   {   echo "conexão ok";     } else   {   echo "erro";     }   Tela Login:   <!DOCTYPE html> <html lang="pt-br"> <link href='css/login.css' rel='stylesheet' />


        <head> <meta charset="UTF-8"> <title>Tela de Login e Senha</title> </head>   <body> <div name="login" id="login"> <div name="box" id="box"> <form method="POST" action="ad.php" name="form"> Login : <input type="text" name="user" id="user"><br><br> Senha : <input type="password" name="pass" id="pass"><br><br> <input type="submit" value="Login" id="button"> </form> </div> </div>   </body>   </html>                                
    • By dutopfave
      Boa Tarde Galera, tenho um sistema de etiqueta que nele vai também código de barras, quando eu mostro na tela, funciona perfeitamente, mais quando gero pra pdf, com a biblioteca mPDF, da erro,  e é justo o código de barras q da esse erro, oq pode ser sera, segue o código de como ta:
       
      <?php require '../../Connections/config.php'; include "../Classes/funcoes.php"; include "cod.php"; $largura = 140; $altura = 130; include("mpdf60/mpdf.php"); // INICIO RECUPERA O ID DA ETIQUETA IMPORTADA $Row_Id_Etiqueta = addslashes($_GET['id_etiqueta']); $Recuperacao_Etiqueta = $pdo->prepare("SELECT * FROM tb_sys_etiqueta WHERE e_id = :e_id"); $Recuperacao_Etiqueta->bindValue(":e_id", $Row_Id_Etiqueta); $Recuperacao_Etiqueta->execute(); if($Recuperacao_Etiqueta->rowCount() > 0){ $Row_Recuperacao_Etiqueta = $Recuperacao_Etiqueta->fetch(); } // FIM RECUPERA O ID DA ETIQUETA IMPORTADA $id_etiqueta = $_GET['id_etiqueta']; $Lista_Etiqueta = "SELECT * FROM tb_sys_etiqueta WHERE e_id = '$id_etiqueta'"; $Lista_Etiqueta = $pdo->query($Lista_Etiqueta); if($Lista_Etiqueta->rowCount() > 0){ $etiqueta_id = $Lista_Etiqueta->fetch(); $qtd = $etiqueta_id['e_volume'] + 1; $qtd2 = $etiqueta_id['e_volume']; for ($i>0; $i<$qtd; $i++) { if($i>$etiqueta_id['e_pagina']){ // verificar se a pagina é menor que 10 if($i<10){ $n = '0'; }else{ $n = ''; } // verificar se a quantidade é menor que 10 if($etiqueta_id['e_volume']<10){ $nq = '0'; }else{ $nq = ''; } $html .= '<div class="etiqueta"> <div class="etiqueta-topo"> <img src="../images/logo.fw.png" width="116" height="52"> </div> <div class="etiqueta-empresa"> <div class="etiqueta-empresa-left"> <h1>GYN</h1> </div> <div class="etiqueta-empresa-right"> <h1>VOL: '.$n.''.$i.'/'.$nq.''.$qtd2.'</h1> </div> </div> <div class="etiqueta-endereco"> <div class="etiqueta-endereco-left"> <span><b>Remetente:</b></span><br/> <span>'.$etiqueta_id['e_remetente'].'</span><br/><br/> <span><b>Destinatário:</b></span><br/> <span>'.$etiqueta_id['e_destinatario'].'</span> </div> <div class="etiqueta-endereco-right"> '.geraCodigoBarra('232323232323').' <br /> '.$etiqueta_id['e_codigo_barras'].' <p>Goiânia/GO</p> </div> </div> </div>'; } } } $mpdf = new mPDF('utf-8', array($largura,$altura)); $css = file_get_contents("css/estilo.css"); $mpdf->WriteHTML($css,1); $mpdf->WriteHTML($html); $mpdf->Output(); exit;  
      a função pra gera o código de barras: cod.php
       
      <?php function geraCodigoBarra($numero){ $fino = 1; $largo = 3; $altura = 50; $barcodes[0] = '00110'; $barcodes[1] = '10001'; $barcodes[2] = '01001'; $barcodes[3] = '11000'; $barcodes[4] = '00101'; $barcodes[5] = '10100'; $barcodes[6] = '01100'; $barcodes[7] = '00011'; $barcodes[8] = '10010'; $barcodes[9] = '01010'; for($f1 = 9; $f1 >= 0; $f1--){ for($f2 = 9; $f2 >= 0; $f2--){ $f = ($f1*10)+$f2; $texto = ''; for($i = 1; $i < 6; $i++){ $texto .= substr($barcodes[$f1], ($i-1), 1).substr($barcodes[$f2] ,($i-1), 1); } $barcodes[$f] = $texto; } } echo '<img src="../images/p.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/p.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img '; $texto = $numero; if((strlen($texto) % 2) <> 0){ $texto = '0'.$texto; } while(strlen($texto) > 0){ $i = round(substr($texto, 0, 2)); $texto = substr($texto, strlen($texto)-(strlen($texto)-2), (strlen($texto)-2)); if(isset($barcodes[$i])){ $f = $barcodes[$i]; } for($i = 1; $i < 11; $i+=2){ if(substr($f, ($i-1), 1) == '0'){ $f1 = $fino ; }else{ $f1 = $largo ; } echo 'src="../images/p.gif" width="'.$f1.'" height="'.$altura.'" border="0">'; echo '<img '; if(substr($f, $i, 1) == '0'){ $f2 = $fino ; }else{ $f2 = $largo ; } echo 'src="../images/b.gif" width="'.$f2.'" height="'.$altura.'" border="0">'; echo '<img '; } } echo 'src="../images/p.gif" width="'.$largo.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/p.gif" width="1" height="'.$altura.'" border="0" />'; } ?>  
    • By Cesar Melo
      Olá. Gostaria de uma opinião sobre onde focar meus estudos para trabalhar com PHP.
      Atualmente tenho conhecimentos com a linguagem PHP, e os seguintes frameworks: Bootstrap e Jquery.
      Recentemente fiz um curso de Laravel+materialize e gostei muito desse framework. Meu primeiro contato com framework para backend e pretendo utilizar o Laravel daqui pra frente nos meus estudos.
       
      Minha questão é a seguinte, quero dar continuidade aos meus estudos para me qualificar para o mercado de trabalho, mas não sei exatamente os próximos cursos que vou estudar.
      Não sei se atualmente há uma combinação de frameworks mais utilizada ou requisitada no mercado de trabalho. Ex: Laravel+vue+bootstrap, ou laravel+angularjs+materialize, tipo isso.
       
      Dei uma pesquisada no google e youtube, e notei que não há muito conteúdo de cursos por exemplo de Laravel+angularjs.
      Procurando algumas vagas de emprego, notei que há grande procurar para profissionais com qualificação em Laravel, e tambem grande procura para profissionais com qualificação em AngularJs, porém vagas distintas. Acho que não vi nenhuma vaga que peça Laravel+AngularJs.
       
      Alguém aí pode me passar uma visão ou dar sua opinião sobre isso, para eu focar meus estudos? Alguém sabe o que andam usando bastante? Ou que seja indicado de trabalhar em conjunto com PHP?
       
      Ah, uma observação... atualmente meu foco são de projetos voltados para sistemas, admin, etc. Não tenho muito perfil para projetos de marketing ou que exijam um frontend "lindo". rsrs.
       
      Grato...
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.