Postado Janeiro 17, 2020 5 anos Olá, ontem eu tive um problema com o shop system do Mordern Acc, procurei em muitos lugares formas para solucionar e não encontrei respostas, eu até encontrei pessoas que descobriram o que era, mas elas não tinham disponibilizado a solução, então para caso mais alguém tenha o mesmo problema que eu, estou postando aqui. O problema: ao acessar o shop ele da os seguintes erros Spoiler A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: 8192 Message: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 13 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: 8192 Message: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 13 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: 8192 Message: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead Filename: config/functions.php Line Number: 12 A PHP Error was encountered Severity: Notice Message: Undefined index: database Filename: config/functions.php Line Number: 13 São 2 problemas na verdade, que geram muitos outros, o mais importante é o da database, qual é o problema? O php tenta acessar sua database, porém, ele não consegue, no meu caso a página indicada no erro é a config/functions.php, está indicando para pegar os dados de entrada da database do arquivo config.php. Spoiler function isInstalled() { require('config.php'); $con = mysql_connect($config['database']['host'], $config['database']['login'], $config['database']['password']); mysql_select_db($config['database']['database'],$con); if(mysql_query("SELECT * FROM shop_offer,shop_history")) return true; else return false; } Porém, o config.php que ele acessa não é o da página principal, mas o da página /shop/config/config.php, então a solução é simples, copiar o Spoiler /*Database information*/ $config['database']['host'] = "127.0.0.1"; $config['database']['login'] = "login"; $config['database']['password'] = "senha"; $config['database']['database'] = "database"; do seu config.php para o shop/config/config.php. Assim o config.php vai ter os dados quando o functions.php pedir, claro você vai ter que mudar os dados nos dois config.php quando precisar, se alguém souber como simplificar responde aqui. O segundo erro é bem simples, apenas está sinalizando que o mysql está ultrapassado e que é melhor você trocar por mysqli, pode-se usar o site normalmente com esse erro, porém, eu não gosto de deixar as coisas assim e procurei um jeito de resolver. Nesse você só vai substituir o seguinte do arquivo /shop/config/functions.php Isso: Spoiler function isInstalled() { require('config.php'); $con = mysql_connect($config['database']['host'], $config['database']['login'], $config['database']['password']); mysql_select_db($config['database']['database'],$con); if(mysql_query("SELECT * FROM shop_offer,shop_history")) return true; else return false; } Por isso: Spoiler function isInstalled() { require('config.php'); $con = mysqli_connect($config['database']['host'], $config['database']['login'], $config['database']['password'], $config['database']['database']); if(mysqli_query($con, "SELECT * FROM shop_offer,shop_history")) return true; else return false; } pronto. O que foi feito? Simplesmente trocamos de mysql para mysql, a diferença é que o mysqli_connect já faz a função de uma linha que usávamos para selecionar a data base, assim o código fica mais compacto. É isso. Obrigado
Postado Janeiro 17, 2020 5 anos Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP. Spoiler Congratulations, your content has been approved! Thank you for your contribution, we of Tibia King we are grateful. Your content will help many other users, you received +1 REP.
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.