-
Conteúdo Similar
-
Por mkboy
Olá
Tenho uma situação onde tenho a mesma tabela em dois bancos de dados diferentes, em locais diferentes.
E quando atualizar uma tabela preciso atualizar a segunda no outro banco de dados também, é a mesma instrução SQL, os bancos / tabelas / registros são iguais.
Tentei isso, mas não funciona:
$endereco_banco = "186.000.00.01"; $usuario = "us01"; $senha = "010101"; $banco = "db01"; $conexao = new mysqli($endereco_banco,$usuario, $senha, $banco); $endereco_banco_externo = "186.000.00.02"; $usuario_externo = "us02"; $senha_externo = "020202"; $banco_externo = "db02"; $conexao_externo = new mysqli($endereco_banco_externo,$usuario_externo, $senha_externo, $banco_externo); //Atualiza no primeiro DB $conexao->query($str) or trigger_error($conexao->error." [$str]"); //Atualiza no segundo DB $conexao_externo->query($str) or trigger_error($conexao_externo->error." [$str]"); Podem me ajudar por favor.
-
Por Lísias de Castro
Ola. Estou criando um sistema de carrinho em php e pra isso preciso de um banco de dados. Pra não ficar chamando todas as funções a cada vez que a pagina atualiza, decidi usar a função mysqli_select_db, que verifica se o db existe e caso não exista, entre nas funções e crie. Porém, ao chamar a função quando o db não existe o php lança um "erro não capturado" e trava o layout. Se eu chamo o código sem o mysqli_select_db o código roda, porem chamando as funções a cada atualização. Poderia ser algum erro na api, ou tem uma nova forma pra pegar o tipo mysqli no php8?
Esse é o código que eu chamo pra salvar os dados:
```php
public function save($host,$user,$pass,$db){
$connection = mysqli_connect($host, $user, $pass);
if($connection){
if(mysqli_select_db($connect,$db)){
}
$dbCreator = "CREATE DATABASE IF NOT EXISTS ".$db;
if(mysqli_query($connection, $dbCreator)){
//echo "Database created successfully"."</br>";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($connection);
return 0;
}
$tableCreator = "CREATE TABLE IF NOT EXISTS `".$db."_tb` (".
"`name` VARCHAR(64) NOT NULL,".
"`price` REAL,".
"`amount` SMALLINT,".
"`barcode` BIGINT NOT NULL PRIMARY KEY,".
"`lot` VARCHAR(64) NOT NULL,".
"`manufactured` VARCHAR(10) NOT NULL,".
"`maturity` VARCHAR(10) NOT NULL".
");";
$insert = "INSERT INTO ".$db."_tb (`name`, `price`, `amount`, `barcode`, `lot`, `manufactured`, `maturity`) ".
"SELECT ".
"\"$this->name\",".
"\"$this->price\",".
"\"$this->amount\",".
"\"$this->barcode\",".
"\"$this->lot\",".
"\"$this->manufactured\",".
"\"$this->maturity\"".
" FROM dual WHERE NOT EXISTS(SELECT * FROM $db"."_tb WHERE barcode = '$this->barcode')LIMIT 1;";
if(mysqli_select_db($connection,$db)){
if(mysqli_query($connection,$tableCreator));//echo "Tabela ".$db."_tb criada com sucesso.<br/>";
if(mysqli_query($connection,$insert));//echo "Dados inseridos com sucesso em $db"."_tb<br/>";
}
mysqli_close($connection);
return 1;
}
return 0;
}
```
-
Por AdrianoAP
Pessoal estou tendo este erro quando eu fui passa a minha aplicação do mysql para o mysqli vejam o código -->>
<?php
$emitente = $mysqli->query("SELECT nome FROM emitente ORDER BY id ASC LIMIT 1");
while($ln = $emitente->fetch_array()){
echo $ln['nome'];
}?>
Devido á isso meu sistema não consegue fazer o login, se alguém puder me dar alguma dica eu agradeço.
-
Por pcdesignerce
tenho um arquivo de configuração do eslint .eslintrc
{ "root": true, "parser": "@typescript-eslint/parser", "plugins": [ "@typescript-eslint" ], "extends": [ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended" ] } O eslint está retornando problemas estranhos no arquivo de configuração do jest: jest.config.js
const { resolve } = require('path'); const root = resolve(__dirname); module.exports = { rootDir: root, displayName: 'root-tests', testMatch: ['<rootDir>/src/**/*.test.ts'], testEnvironment: 'node', clearMocks: true, preset: 'ts-jest', moduleNameMapper: { '@src/(.*)': '<rootDir>/src/$1', '@test/(.*)': '<rootDir>/test/$1', }, }; na linha 1 - 'require' is not defined. eslint (no-undef): consigo remover esta mensagem com import {resolve} from 'path'
na linha 2 - '__dirname' is not defined. Esta variável é tipada com string. removi a mensagem de erro transformando a variável em uma string: resolve('__dirname')
na linha module.exports: 'module' is not defined. eslint (no-undef). Posso ignorar a mensagem de erro desta linha com eslint.
O problema é o seguinte: estou acompanhado um vídeo no youtube, instalei a mesma versão do node e das dependências do treinamento que estou acompanhado,
pra evitar erros. Mas mesmo assim acho muito estranho, pois estas variáveis não são definidas pelo usuário, são variáveis globais do node/javascript.
Será que é algum problema na instalação do node, devo atualizar as verões das dependências.
Dei uma travada nisso e não encontrei nada a respeito. Se alguém tiver uma solução ou explicação desde já agradeço.
-
Por Felper
Criei um sistema de login com php e mysql mas não consigo realizar o login mesmo tendo certeza de que os dados foram cadastrados com sucesso. Não sei o que fiz de errado. Vejam o código:
<?php $login2 = $_POST['loginlogar']; $senha2 = $_POST['senhalogar']; $link = mysqli_connect("localhost", "root", "", "bancolanche") or die("<h1>Não foi possível conectar!!</h1>". mysqli_error()); $banco = mysqli_select_db($link, "bancolanche") or die("<h1>Não foi possível abrir banco de dados!!</h1>". mysqli_error()); $sql = "SELECT login, senha FROM users"; $resulta = mysqli_query($link, $sql); while ($book = $resulta->fetch_object()) { $logindb = $book->login; $senhadb = $book->senha; } if($login2 == "" || $senha2 == ""){ $_SESSION['msg'] = "<h1 style='color:red'>Erro ao logar! Há campos de preenchimento obrigatório em branco.</h1>"; header("Location: logar.php"); } else { if($logindb==$login2 && $senhadb==$senha2){ $_SESSION['msg'] = "<h1 style='color:green'>Logoff realizado com sucesso!</h1>"; header("Location: index.html"); } else { $_SESSION['msg'] = "<h1 style='color:red'>Erro ao logar! Usuário inexistente ou senha incorreta.</h1>"; header("Location: logar.php"); } } mysqli_close($link); ?>
-