bloodnick2015 Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 (editado) Estou usando o Dreamweaver CS6 e ele criou pra mim um arquivo de conexão com o banco de dados:<?php # FileName="Connection_php_mysql.htm" # Type="MYSQL" # HTTP="true" $hostname_x_conexao = "localhost"; $database_x_conexao = "x_bd"; $username_x_conexao = "root"; $password_x_conexao = ""; $x_conexao = mysql_pconnect($hostname_xs_conexao, $username_x_conexao, $password_x_conexao) or trigger_error(mysql_error(),E_USER_ERROR); ?>Só que quando rodo o site através do Wampserver na versão 5.5.12 do PHP dá uma mensagem de erro: Como o Dreamweaver CS6 pode criar algo obsoleto? Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 O problema não está na versão do Dreamweaver. O problema é que estás a usar a biblioteca mysql que já foi descontinuada. Usa mysqli ou PDO. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Como assim biblioteca mysql? Foi o Dreamweaver CS6 que criou a conexão em php. Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 (editado) Biblioteca ou API, como lhe quiseres chamar.Tens exemplos de uso de mysqli e PDO no link que indiquei. Editado Novembro 1, 2015 por wootzor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Então mas tem haver com o Dreamweaver CS6, pois ele que criou a conexão? Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 (editado) Não, tem a ver com o código PHP. O Dreamweaver é apenas o IDE (editor) que usas para escrever o código. Faz assim:<?php $hostname_x_conexao = "localhost"; $database_x_conexao = "x_bd"; $username_x_conexao = "root"; $password_x_conexao = ""; $x_conexao = new mysqli($hostname_x_conexao, $username_x_conexao, $password_x_conexao, $database_x_conexao); $query = "SELECT * FROM `nome_tabela`"; $resultado = $x_conexao->query($query); if (!$resultado) { echo "Não existem dados para a consulta executada."; } else { while ($linha = $resultado->fetch_array(MYSQLI_ASSOC)) { //acedes ao valor de cada campo da BD utilizando $linha["nome_campo"] } } Editado Novembro 1, 2015 por wootzor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 Não, tem a ver com o código PHP. O Dreamweaver é apenas o IDE (editor) que usas para escrever o código. Faz assim:<?php $hostname_x_conexao = "localhost"; $database_x_conexao = "x_bd"; $username_x_conexao = "root"; $password_x_conexao = ""; $x_conexao = new mysqli($hostname_x_conexao, $username_x_conexao, $password_x_conexao, $database_x_conexao); $query = "SELECT * FROM `nome_tabela`"; $resultado = $x_conexao->query($query); if (!$resultado) { echo "Não existem dados para a consulta executada."; } else { while ($row = $x_conexao->fetch_array(MYSQLI_ASSOC)) { //acedes ao valor de cada campo da BD utilizando $row["nome_campo"] } } Ok, não aparece mais o erro com o arquivo conexão, mas aparece "Não existem dados para a consulta executada". Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 Tens de substituir o texto da consulta de exemplo (variável $query) pela tua consulta. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Tens de substituir o texto da consulta de exemplo (variável $query) pela tua consulta.Ms não quero que chame uma tabela na conexão, pois essa conexão é chamada para todas páginas do meu site. Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 Então deixa ficar nesse ficheiro só até à linha$x_conexao = new mysqli($hostname_x_conexao, $username_x_conexao, $password_x_conexao, $database_x_conexao);E depois, no ficheiro onde queres aceder à BD, fazes o require desse ficheiro de ligação:<?php require_once("Connections/pixels_conexao.php"); //verifica se o caminho para o ficheiro está correcto $query = "SELECT * FROM `nome_tabela`"; //substitui pela tua consulta $resultado = $x_conexao->query($query); if (!$resultado) { echo "Não existem dados para a consulta executada."; } else { while ($linha = $resultado->fetch_array(MYSQLI_ASSOC)) { //acedes ao valor de cada campo da BD utilizando $linha["nome_campo"] } } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Agora quando mando cadastrar aparece:Cara acho que esse erros é problema do editor, pois foi ele que criou praticamente tudo em php. Linha 10: $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);Linha 45: mysql_select_db($database_x_conexao, $x_conexao);Linha 46: $Result1 = mysql_query($insertSQL, $x_conexao) or die(mysql_error()); Editado Novembro 1, 2015 por bloodnick2015 Errado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 Tens de substituir todas as chamadas a mysql_* por $mysqli->. Exemplo: mysql_select_db("nome") passa a $mysqli->select_db("nome"). Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 Agora isso: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 Tens de fazer o require_once do ficheiro da ligação à BD em todos os ficheiros onde queres mostrar dados, seja de utilizadores ou de páginas. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Opa coloquei errado, é estas mensagens agora: Mudei:Linha 10: $theValue = function_exists("$mysqli->real_escape_string") ? $mysqli->real_escape_string($theValue) : $mysqli->escape_string($theValue);Linha 45: $mysqli->select_db($database_x_conexao, $x_conexao);Linha 46: $Result1 = $mysqli->query($insertSQL, $x_conexao) or die($mysqli->error()); Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 Experimenta antes assim:Linha 10: $theValue = $mysqli->real_escape_string($theValue);Linha 45: $mysqli->select_db($database_pixels_conexao);Linha 46: $Result1 = $mysqli->query($insertSQL) or die($mysqli->error()); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 Agora apareceu isso: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Olha acho que isso tudo é por causa do Dreamweaver CS6, pois eu mandei ele criar tudo isso em php.O meu Dreamweaver CS6 é a versão: 12.0 Build 5808... Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 1, 2015 Denunciar Share Postado Novembro 1, 2015 Pois, não sei pois não costumo usar o Dreamweaver e nunca o usei para criar um projecto em PHP. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 1, 2015 Autor Denunciar Share Postado Novembro 1, 2015 (editado) Então acho que é o Dreamweaver CS6, alguém que já usou ele para criar projeto em PHP com conexão pode confirmar se ele cria códigos obsoletos como a conexão? Editado Novembro 1, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 2, 2015 Autor Denunciar Share Postado Novembro 2, 2015 Experimenta antes assim:Linha 10: $theValue = $mysqli->real_escape_string($theValue);Linha 45: $mysqli->select_db($database_pixels_conexao);Linha 46: $Result1 = $mysqli->query($insertSQL) or die($mysqli->error());Aparece agora: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 2, 2015 Denunciar Share Postado Novembro 2, 2015 Consegues mostrar o código relevante dessa página (cadastro_de_usuarios)? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 2, 2015 Autor Denunciar Share Postado Novembro 2, 2015 (editado) Sim.parte php do cadastro_de_usuarios.php:<?php require_once('../Connections/pixels_conexao.php'); ?> <?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = $mysqli->real_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO pixels_usuarios (usu_nome, usu_email, usu_senha) VALUES (%s, %s, md5(%s))", GetSQLValueString($_POST['usu_nome'], "text"), GetSQLValueString($_POST['usu_email'], "text"), GetSQLValueString($_POST['usu_senha'], "text")); $mysqli->select_db($database_pixels_conexao); $Result1 = $mysqli->query($insertSQL) or die($mysqli->error()); $insertGoTo = "sucesso.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); } ?> Editado Novembro 4, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 2, 2015 Autor Denunciar Share Postado Novembro 2, 2015 (editado) Usa um editor. Editado Novembro 4, 2015 por bloodnick2015 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bloodnick2015 Postado Novembro 5, 2015 Autor Denunciar Share Postado Novembro 5, 2015 Consegues mostrar o código relevante dessa página (cadastro_de_usuarios)?Oi, já coloquei o código. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 wootzor Postado Novembro 7, 2015 Denunciar Share Postado Novembro 7, 2015 Troca $mysqli pelo nome do teu objecto de ligação à BD ($pixels_conexao, talvez?) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
bloodnick2015
Estou usando o Dreamweaver CS6 e ele criou pra mim um arquivo de conexão com o banco de dados:
Só que quando rodo o site através do Wampserver na versão 5.5.12 do PHP dá uma mensagem de erro:
Como o Dreamweaver CS6 pode criar algo obsoleto?
Editado por bloodnick2015Link para o comentário
Compartilhar em outros sites
32 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.