Joelxd Postado Janeiro 28 Denunciar Share Postado Janeiro 28 Ola a todos, sou novo no fórum. Estou com um problema que não sei o que fazer já estou a fora a 8 anos e já não tenho os mesmos conhecimentos. Eu penso que seja por eu colocar a pasta public_hmtl logo no inicio ele funcionava. agora domains/pinka.website/public_html onde estou a colocar os ficheiros do site.Assim desta forma não dá nada. na index.php <?php ob_start(); session_start(); require('dts/configs.php'); viewManager(); ?> que vai chamar configs.php <?php //DEFINE BANCO DEDADOS define('HOST','localhost'); define('USER','u241595549_joel'); define('PASS','Joelxx'); define('DBSA','u241595549_joel'); //BASE DO SITE define('BASE','http://www.pinka.website'); define('IMAGEW','680px'); $conn = mysql_connect(HOST, USER, PASS) or die ('Erro ao conectar: '.mysql_error()); $dbsa = mysql_select_db(DBSA) or die ('Erro ao selecionar banco: '.mysql_error()); //Inclui funcoes require_once('functions.php'); function myAut($nivel = NULL){ if($_SESSION['userlogin']){ $id = $_SESSION['userlogin'] ['id']; $login = $_SESSION['userlogin'] ['login']; $senha = $_SESSION['userlogin'] ['senha']; $readAutUser = read('usuarios',"WHERE id = '$id' AND login = '$login' AND senha = '$senha'"); if(!$readAutUser): unset($_SESSION['userlogin']); header('Location: index.php?restrito=true'); else: if($nivel && $nivel != $_SESSION['userlogin']['nivel']): header('Location: dashboard.php?exe=sis/403'); endif; endif; }else{ header('Location: index.php?restrito=true'); } } //DEFINE O TEMA A SER USADO $config_readTheme = read('config_theme',"WHERE inuse = '1'"); if($config_readTheme): foreach($config_readTheme as $config_theme); define('THEME',$config_theme['pasta']); else: define('THEME','default'); endif; //DEFINE O SERVIDOR DE E-MAIL $config_readMailServer = read('config_mailserver'); if($config_readMailServer): foreach($config_readMailServer as $config_mailserver); define('MAILUSER',$config_mailserver['email']); define('MAILPASS',$config_mailserver['senha']); define('MAILPORT',$config_mailserver['porta']); define('MAILHOST',$config_mailserver['server']); else: define('MAILUSER','null'); define('MAILPASS','null'); define('MAILPORT','null'); define('MAILHOST','null'); endif; //DEFINE O SEO SOCIAL $config_readSeoSocial= read('config_seosocial'); if($config_readSeoSocial): foreach($config_readSeoSocial as $config_seosocial); define('SITENAME',$config_seosocial['titulo']); define('SITEDESC',$config_seosocial['descricao']); define('FACEBOOK',$config_seosocial['facebook']); define('TWITTER',$config_seosocial['twitter']); else: define('SITENAME','null'); define('SITEDESC','null'); define('FACEBOOK','null'); define('TWITTER','null'); endif; //ENDEREÇO E TELEFONE $config_readEndTel= read('config_endtel'); if($config_readEndTel): foreach($config_readEndTel as $config_endtel); define('ENDERECO',$config_endtel['endereco']); define('TELEFONE',$config_endtel['telefone']); else: define('ENDERECO','NULL'); define('TELEFONE','NULL'); endif; eu alterava este ficheiro Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Janeiro 28 Denunciar Share Postado Janeiro 28 (editado) Eu não tenho nenhuma experiência com o servidor, mas eu faria o seguinte: Crie o arquivo index.php dentro do diretório public_html, assim: arquivo index.php <?php echo "olá mundo!"; e depois digite no navegador: https:/pinka.website para ver o que acontece (eu tentei digitar http, mas o Chrome mudou para https). Pelo nome do banco de dados, isso parece Hostinger do tipo compartilhado, mas eu só consigo ver a pasta public_html no meu caso. Editado Janeiro 28 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joelxd Postado Janeiro 28 Autor Denunciar Share Postado Janeiro 28 (editado) Obrigado pela celeridade da resposta.sim o servidor hostinger. Apareceu de facto? O que estou a fazer de errado no meu código? ele antes funcionava? dentro da pasta public/mas na raiz do servidor. domains/pinka.website/public_html è notorio por estar dentro da pasta domains que ele não reconhece os caminhos <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="icon" type="image/png" href="<?php setHome();?>/themes/<?php echo THEME;?>/images/favicon.png"/> Editado Janeiro 28 por Joelxd Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Janeiro 28 Denunciar Share Postado Janeiro 28 (editado) Digitei https://www.pinka.website, mas não apareceu nada por aqui. Eu presumo que você tirou o arquivo index.php de lá. Para testar se o banco de dados ainda está lá, eu sugiro o seguinte código: arquivo index.php no diretório html_public: <?php $mysqli=new mysqli("localhost","u241595549_joel","u241595549_joel","u241595549_joel"); if ($mysqli === false) { echo 'A conexão com o banco de dados falhou.';} else { echo 'A conexão com o banco de dados foi bem-sucedida.';} Se não retornar nenhuma mensagem, suponho que o banco de dados não existe. Mas se der certo, você joga todos os códigos da raiz para dentro do html_public. Esse é o famoso método científico da tentativa e erro. Editado Janeiro 28 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joelxd Postado Janeiro 28 Autor Denunciar Share Postado Janeiro 28 (editado) Sim Retirei o arquivo"ola mundo" Banco dados retornou resultados. Imagina já tenho o index.php tal como todos os ficheiros. Quero te questionar Antes quando tinha o site on. Eu tinha a pasta public no root, agora na hostinger tenho root/domains/pinka.website/Public_html. Será que não influencia no meu codigo? Este codigo é a index.php ou seja logo no inicio e não retorna resultados ou ele não econtra pasta dts que dentro tem o ficheiro configs.php require (dts/configs.php <?php ob_start(); session_start(); require('dts/configs.php'); viewManager(); ?> <!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> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" /> <script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" /> <script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" /> <script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script> <script> window.addEventListener("load", function(){ window.cookieconsent.initialise({ "palette": { "popup": { "background": "#000" }, "button": { "background": "#f1d600" } }, "position": "top", "static": true, "content": { "message": "Este website utiliza cookies que asseguram funcionalidades para uma melhor navegação. Ao continuar a navegar está a concordar com a sua utilização", "link": "Leia Mais" } })}); </script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="icon" type="image/png" href="<?php setHome();?>/themes/<?php echo THEME;?>/images/favicon.png"/> <link rel="stylesheet" type="text/css" href="<?php setHome();?>/jsc/shadowbox/shadowbox.css" /> <link rel="nofollow" title="base" href="<?php setHome();?>" /> <link rel="nofollow" title="theme" href="<?php echo THEME;?>" /> <script type="text/javascript" src="<?php setHome();?>/jsc/jquery.js"></script> <script type="text/javascript" src="<?php setHome();?>/jsc/jcycle.js"></script> <script type="text/javascript" src="<?php setHome();?>/jsc/jmask.js"></script> <script type="text/javascript" src="<?php setHome();?>/jsc/shadowbox/shadowbox.js"></script> <?php require('themes/'.THEME.'/css/'.THEME.'.css.php');?> <?php require('themes/'.THEME.'/js/'.THEME.'.js.php');?> <?php manutencao(); getHome();?> </body> </html> Editado Janeiro 28 por Joelxd Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Janeiro 29 Denunciar Share Postado Janeiro 29 (editado) Reeditando: Testei o seu código, e não consegui executar o dts/configs.php - eu trabalho com o motor mysqli e o PDO. Eu já ouvi falar do motor mysql, mas acho que a Hostinger também não tem esse motor para o PHP. Mudei a linha 14 e 15 do configs.php assim: $conn = mysqli_connect(HOST, USER, PASS,DBSA) or die ('Erro ao conectar: '.mysqli_connect_error()); // $dbsa = mysqli_select_db(DBSA) or die ('Erro ao selecionar banco: '.mysql_error()); Acredito que o problema é o driver. Aqui no fórum tem vários códigos que usam o driver mysql, mas isso lá em 2010. Aconselho a usar o motor mysqli (exclusivo para o MySQL) ou o PDO (que pode ser usado em outro tipo de banco de dados além do MySQL). Aprender gramática nova é muito chato. Eu apanhei muito com o MySQL, eu trabalhava com o Microsoft Access. Mas aqui em 2024 temos uma ótima novidade: o IA, eu uso o Bader do Google. Tem muita que não sei como fazer, e eu pergunto para ele coisa do tipo "como é a gramática do PDO para excluir um registro?" Você vai amar o Bader, é claro se você conseguir pelo menos 50% de respostas que funcionam. Tem hora que eu quero matar o Bader. Editado Janeiro 29 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joelxd Postado Janeiro 29 Autor Denunciar Share Postado Janeiro 29 (editado) ola franck posso te mandar meu codigo? tem a ver com os caminhos penso eu? Editado Janeiro 29 por Joelxd Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Janeiro 29 Denunciar Share Postado Janeiro 29 (editado) Ok, mande pelo email frankhosaka@gmail.com o zip do código php, mas preciso também da estrutura do banco de dados no formato .sql (se tiver alguns dados, melhor ainda). Mas não prometo rápido retorno. A minha vida também é bem enrolada. Editado Janeiro 29 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joelxd Postado Janeiro 29 Autor Denunciar Share Postado Janeiro 29 Ola frank muito obrigado por estar ajudar. Enviei e-mail Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Janeiro 29 Denunciar Share Postado Janeiro 29 Joel, eu sinto muito, mas eu não tenho como ajudar. O seu projeto tem mais de 1.000 arquivos, e ele trabalha com o serviço de email, coisa que eu não tenho a menor experiência. O pior drama é o driver que conecta o PHP ao banco de dados, ele usa o driver mysql, coisa que não é utilizado desde a versão PHP 7. O Hostinger só trabalha com o PHP 7.3 em diante. O novo driver se chama mysqli. O problema é que não basta pegar tudo que é "mysql" do seu projeto e renomear para "mysqli". O novo driver traz uma nova gramática bem diferente do anterior. Veja esse código: /***************************** FUNÇÃO DO PRO PHP FUNÇÃO DE LEITURA NO BANCO *****************************/ function read($tabela, $cond = NULL){ $qrRead = "SELECT * FROM {$tabela} {$cond}"; $stRead = mysql_query($qrRead) or die ('Erro ao ler em '.$tabela.' '.mysql_error()); $cField = mysql_num_fields($stRead); for($y = 0; $y < $cField; $y++){ $names[$y] = mysql_field_name($stRead,$y); } for($x = 0; $res = mysql_fetch_assoc($stRead); $x++){ for($i = 0; $i < $cField; $i++){ $resultado[$x][$names[$i]] = $res[$names[$i]]; } } return $resultado; } Eu sou do tempo do mysqli, comecei a estudar o PHP após 2020, ou seja, eu não sou capaz de enxergar como essa função consegue enxergar a conexão com o banco de dados. Eu acredito que o comando "mysql_query" já fazia a conexão. Mas o novo comando "mysqli_query" é diferente, ele não sabe aonde está a conexão, logo o código acima ficaria mais ou menos assim: $cField = mysqli_num_fields($stRead,$conn); Ou seja, a sua função original trabalhava com apenas um parâmetro. Com o novo driver, a função original vai precisar de dois parâmetros, isso sem falar que muitos comandos do driver mysql foram abandonados no novo driver mysqli. O mais sensato é jogar tudo fora, e começar do zero. Eu sinto muito. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joelxd Postado Janeiro 30 Autor Denunciar Share Postado Janeiro 30 muito obrigado, na hostinguer selecionei o drive7.0. será que é mesmo desta situação? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Janeiro 30 Denunciar Share Postado Janeiro 30 (editado) Legal, selecione o PHP 5.6, eu acho que tudo voltará a funcionar. O problema é se você precisar de alguém para usar o motor mysql. Desconfio que ninguém mais trabalha com esse driver. Mas, antes, você precisa desmarcar a opção "Exibir versões PHP que não são mais suportadas". Ah, tem uma parte do código no configs.php que você escreveu define('HOST','mysql.hostinger.com.br'); acho que o correto é: define('HOST','localhost'); Editado Janeiro 30 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joelxd Postado Fevereiro 1 Autor Denunciar Share Postado Fevereiro 1 ola amigo, desculpa a demora. Realmente alterei para o php PHP 5.6. e já retomou alguns resultados. por exemplo o painel de administração funciona a 100%. Como é que a minha índex não está a funcionar? Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/u241595549/domains/pinka.website/public_html/dts/configs.php on line 14 Notice: Undefined index: url in /home/u241595549/domains/pinka.website/public_html/functions.php on line 7 Notice: Undefined offset: 1 in /home/u241595549/domains/pinka.website/public_html/functions.php on line 13 Warning: require_once(../domains/pinka.website/themes/light/404.php): failed to open stream: No such file or directory in /home/u241595549/domains/pinka.website/public_html/functions.php on line 16 Fatal error: require_once(): Failed opening required '../domains/pinka.website/themes/light/404.php' (include_path='.:/opt/alt/php56/usr/share/pear:/opt/alt/php56/usr/share/php') in /home/u241595549/domains/pinka.website/public_html/functions.php on line 16 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Fevereiro 1 Denunciar Share Postado Fevereiro 1 (editado) Isso significa que o seu código PHP também não é compatível com o PHP 5.6. O jeito é voltar um pouco para trás, a minha sugestão é o 5.2, se ele estiver disponível. Eu estudei o Index.php, levei 5 dias para entender a rotina do consentimento que está escrito em JavaScript. Consegui alterar o ícone da guia do navegador, mas eu tive que mudar o código. Enfim, eu acredito que vou levar uns 3 anos só para o Index.php funcionar dentro do PHP 8.2 e MySQL 8.0.3. O projeto todo conta com 1.092 arquivos, mas o IA ainda não é capaz de converter códigos velhos com as novas versões do PHP e MySQL. Muito menos eu. Editado Fevereiro 1 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Joelxd
Ola a todos, sou novo no fórum.
Estou com um problema que não sei o que fazer já estou a fora a 8 anos e já não tenho os mesmos conhecimentos.
Eu penso que seja por eu colocar a pasta public_hmtl logo no inicio ele funcionava.
agora domains/pinka.website/public_html onde estou a colocar os ficheiros do site.Assim desta forma não dá nada.
na index.php
que vai chamar configs.php
eu alterava este ficheiro
Link para o comentário
Compartilhar em outros sites
13 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.