-
Total de itens
35 -
Registro em
-
Última visita
Posts postados por rxhxtx
-
-
boa noite,
gostaria de escrever isto no mysql:
Atualize todos os registros na 'tabela_tal' do 'usuario=01' contendo o 'status = 0' para 'status = 1'
alguém consegue me ajudar??
para facilitar o entendimento:
Quando o php é executado, quero procurar todos os registros de um usuario que o status seja '=0' e muda-los para '=1'
muito obrigado!!
Deu certo da seguinte forma:
UPDATE tabela_tal SET `status` = '1' WHERE `status` = '0' AND `usuario` = '01';
-
Boa noite amigos, estou tendo uma dificuldade
quero ver se o usuario selecionou ao menos 1 checkbox,
estava funcionando desta forma
<script> function validate(){ var i = 0, counter = 0, testeCB; testeCB = document.forms[0].testeCB; for (; i < testeCB.length; i++) { if (testeCB[i].checked) { counter++; } } if (counter==0){ alert("Você precisa selecionar pelo menos um") return false; } return true; } </script> <input type="checkbox"id="cb1" name="testeCB" value="1"> <input type="checkbox"id="cb2" name="testeCB" value="2">
ai até ai perfeito, porem quero armazenar os dados e o nome se torna "testeCB[]".. ai eu não consigo....
como faria para funcionar assim?
andei pesquisando e o mais proximo que acho q cheguei foi assim:
<script> function validate(){ var i = 0, counter = 0, testeCB; testeCB = document.forms[0].elements['testeCB[]']; for (; i < testeCB.length; i++) { if (testeCB[i].checked) { counter++; } } if (counter==0){ alert("Você precisa selecionar pelo menos um") return false; } return true; } </script> <input type="checkbox"id="cb1" name="testeCB[]" value="1"> <input type="checkbox"id="cb2" name="testeCB[]" value="2">
mas ainda não funciona,
alguém consegue me ajudar?
-
Boa tarde amigos,
Estava tentando fazer uma atualização via Ajax no sistema, atualiza os dados da pagina, porem não atualiza no banco de dados,
muito provavel que o erro esteja em alguma coisa na parte de php, mas eu não estou cnseguindo encontrar solução:
INDEX
<?php include 'listaUSUcon.php'; ?> <head></head> <body> <div class="container"> <table class="table"> <thead> <tr> <th>Firstname</th> <th>Lastname</th> <th>Email</th> <th>Action</th> </tr> </thead> <tbody> <?php $table = mysqli_query($connection ,'SELECT * FROM users_full'); while($row = mysqli_fetch_array($table)){ ?> <tr id="<?php echo $row['user_id']; ?>"> <td data-target="user_fname"><?php echo $row['user_fname']; ?></td> <td data-target="user_lname"><?php echo $row['user_lname']; ?></td> <td data-target="user_email"><?php echo $row['user_email']; ?></td> <td><a href="#" data-role="update" data-id="<?php echo $row['user_id'] ;?>">Update</a></td> </tr> <?php } ?> </tbody> </table> </div> <!-- Modal --> <div id="myModal" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <input type="text" id="user_id" class="form-control" readonly> </div> <div class="modal-body"> <div class="form-group"> <label>First Name</label> <input type="text" id="user_fname" class="form-control"> </div> <div class="form-group"> <label>Last Name</label> <input type="text" id="user_lname" class="form-control"> </div> <div class="form-group"> <label>Email</label> <input type="text" id="user_email" class="form-control"> </div> <input type="hidden" id="user_id" class="form-control"> </div> <div class="modal-footer"> <a href="#" id="save" class="btn btn-primary pull-right save">Update</a> <button type="button" class="btn btn-default pull-left" data-dismiss="modal">Close</button> </div> </div> </div> </div> </body> <script> $(document).ready(function(){ // append values in input fields $(document).on('click','a[data-role=update]',function(){ var user_id = $(this).data('id'); var user_fname = $('#'+user_id).children('td[data-target=user_fname]').text(); var user_lname = $('#'+user_id).children('td[data-target=user_lname]').text(); var user_email = $('#'+user_id).children('td[data-target=user_email]').text(); $('#user_fname').val(user_fname); $('#user_lname').val(user_lname); $('#user_email').val(user_email); $('#user_id').val(user_id); $('#myModal').modal('toggle'); }); // now create event to get data from fields and update in database $('#save').click(function(){ var user_id = $('#user_id').val(); var user_fname = $('#user_fname').val(); var user_lname = $('#user_lname').val(); var user_email = $('#user_email').val(); $.ajax({ url : 'listaUSUcon.php', method : 'post', data : {user_fname : user_fname , user_lname: user_lname , user_email : user_email , user_id: user_id}, success : function(response){ // now update user record in table $('#'+user_id).children('td[data-target=user_fname]').text(user_fname); $('#'+user_id).children('td[data-target=user_lname]').text(user_lname); $('#'+user_id).children('td[data-target=user_email]').text(user_email); $('#myModal').modal('toggle'); } }); }); }); </script>
nesta parte esta pegando os dados do banco de dados e exibindo na pagina,
está puxando os dados corretos para o Modal.
Quando clica em editar, esta editando na página corretamente, mas não atualiza no banco de dados,se atualizar a pagina voltam os dados originais.
listaUSUcon.php
<?php $connection = mysqli_connect('localhost' , 'root' ,'' ,'testes'); if(isset($_POST['user_id'])){ $user_fname = $_POST['user_fname']; $user_lname = $_POST['user_lname']; $user_email = $_POST['user_email']; $user_id = $_POST['user_id']; // query to update data $result = mysqli_query($connection , "UPDATE `users_full` SET `user_fname`=`$user_fname` , `user_lname`=`$user_lname` , `user_email`= `$user_email` WHERE `user_id`=`$user_id`"); if($result){ echo 'data updated'; } } ?>
fiz uns teste retirando o if POST e alterando os dados para "valor" e dai atualiza,
mas usando esse AJAX não funciona de maneira alguma...alguém consegue me dar uma luz?
Obrigado!!
-
bom, caso mais alguém tenha essa duvida, a solucao simples seria:
pega dados do form...
no INSERT do cadastro colocar (usuario, senha, diretorio) value $usuario, $senha, $usuario... assim o usuario X sera encaminhado para a pasta X
if true
cria pasta $usuario (criar a pasta com o mesmo nome de usuario)
no login
faz verificação e pega valor do diretorio na tabela
direciona para .../".$diretorio;
no index da pasta
verifica se esta logado (basico)
pega dados da url, separa e cria $url
e confere se $url !== $diretorio{
header('logout')
}
....
continua codigo
-
5 horas atrás, Leonardo Persan disse:
Perfeito
Na verdade não é no caso deles não estarem na mesma sala(arquivo) e você além de estender o Joãozinho (criando/ajudando) Carlos, Mariana e Júlia, você precisa dizer o endereço da sala(qual arquivo o PHP tem que ler para achar a classe Joãozinho) isso somado aos Namespaces permite ter vários Joãos em salas(pastas) separadas, com responsabilidades diferentes, sem conflito.
Ex.: DB\MySQL\Select e DB\Postgres\Select
Duas classes Select em pastas separadas com Namespaces diferentes.
Voltando ao Joãozinho, se estiverem todos na mesma sala(arquivo), ou se você faz o PHP visitar todas as salar(ler todos os arquivos de classes obrigatóriamente) não precisa de use
O USE reduz o tempo de resposta fazendo o PHP ler apenas uma vez e somente os arquivos necessários para aquela requisição. Se em uma requisição você só precisa verificar login e senha no Banco de Dados ele não vai perder tempo carregando a classe que gera PDFs ou conecta com e-mail...
massaaaaaa..... entendi!!!!
agora entendo porque usam tanto metaforas na vida.... rsrsrsrs
valeu amigo, me esclareceu um tema que não estva fazendo sentido na minha cabeça ate agora.
Agora já consigo me localizar bem melhor nos meus estudo sobre isso!
obrigado!!
-
3 horas atrás, Leonardo Persan disse:
Usar OO de forma realmente certa é difícil, é mais um exercício de pensar as responsabilidades do que realmente de código eu tento usar a técnica de pensar a classe como pessoas mesmo que têm cargos e responsabilidades limitadas rsrsrs
Isso mesmo
Eles fazem coisas bem diferentes, vamos passo a passo...
EXTENDS(Herança)
Com o encapsulamento do código em classes percebeu-se que assim como aconteciam com as funções tinham trechos de códigos que se repetiam em classes diferentes para resolver isso criou-se o conceito de herança, que é você pegar esse código repetido colocar em outra classe e definir ela como "pai" de outras classes. Nessa brincadeira surgiram as Interfaces, Abstracts e Traits, mas isso é história para outra hora rsrsrsEx.: As classes Gmail e Hotmail, fazem a mesma coisa, enviam e-mail, mas cada uma conecta de um jeito diferente em servidores diferentes.
Mas digamos que ela tenha que acessar algumas tabelas no seu banco de dados, para coletar dados do usuário. Essa parte da conexão será idêntica já que o banco é o mesmo. Então vamos criar uma classe Email que tenha esse código que é repetido, pra gente não ter retrabalho. Assim
class Email {...}
class Gmail extends Email {...}
class Hotmail extends Email {...}Resumo extends serve para compartilhar código entre classes de maneira vertical, de cima para baixo.
USE(require/include)
Quando você usa uma classe que está em um arquivo dentro de outra classe em outro arquivo, você precisa usar um require ou include para o PHP saber quais arquivos ele deve ler, correto?
Imagina um sistema grande com dezenas de classes, uma em cada arquivo e imagina essas classes sendo usadas umas dentro da outra formando uma teia.
Então se dentro de Usuario.php eu usar um require para Posts.php e as duas têm um require para Banco.php ferrou vai dar erro porque Banco está sendo declarado duas vezes.
Você pode resolver isso com IFs, mas a partir desse e outros problemas de organização criou-se o use (e os Namespaces mas isso também fica pra outra hora).
Resumo use(junto com o autoload) serve como um require/include inteligente que facilita usar um código/classe dentro de outro arquivo
p****.... acho q entendi manooo!!!
pensando como pessoas, o extends seria mais ou menos assim
mariana precisa anotar em papeis os nomes, idade e cidade dos seus clientes
carlos precisa anotar em papeis, carros, marcas, velocidade e cor
julia precisa anotar em papeis quantas vezes o portao da empresa abriu
o extends seria "a ponte" entre essas pessoas e o joaozinho, que pergunta quantos papeis cada um vai precisar, depois pega os papeis preenchidos e guarda nas caixinhas de cada um.já o use seria apenas para quando mariana precisa deixar um recado para o carlos pegar as laranjas da fruteira e colocar no carro
mas ou menos essa ideia?
-
Em 21/07/2019 em 15:26, Leonardo Persan disse:
É mais fácil pensar que uma classe é alguém que armazenar dados e deve fazer coisas dentro de um contexto.
Um método estático (com static) é uma ação que não precisa de contexto.
Dentro de insertCard você pode chamar self::numeroAleatorio() ou NomeClasse::numeroAleatorio()
aproveitei sua dica e dei uma bela estudada sobre isso,
realmente em meus estudos eu estava fazendo muita coisa errada nisto.
não usava o private nem abstract, valeu mais essa dica!!!!
ultima dúvida com relacao a essa "chamada", se eu escrever self:: eu não preciso citar o nome da classe? desde que ela esteja na mesma classe... isso?
La em cima, eu preciso colocar o "use nomeDaClasse" ou "extends NomedaClasse"?
isso ainda me deixa um pouco confuso, fazem a mesma coisa???
-
Boa noite,
Em 19/07/2019 em 08:28, Leonardo Persan disse:As duas funções fazem parte da mesma uma classe?
Por que usou o static em numeroAleatorio?
Cara, para te falar a verdade eu nunca entendi muito bem quando usar o static ou não..
Sim, estão dentro da mesma classe, tentei colocando em outra classe também não funcionou...
em todas as partes do meu codigo eu estou conseguindo pegar da seguinte forma
Classes\ClassTal::funcaoTal($var);ouClasses\ClassTal::funcaoTal();mas nesse insertCad não pega nada..
ai decidi colocar dentro da mesma classe para tentar facilitar meu desenvolvimento, mas também sem resultado....
temporariamente estou gerando o valor numa pag1 q joga pra uma pag2 por session, bem gambiarra, so para não travar totalmente ali,
,as eu queria conseguir fazer do jeito certo...
-
Boa tarde amigos,
estou aqui empenhado nos meus estudos e travei em uma coisa:
quero pegar um valor de uma funcao em outra, já tentei de tudo quanto é jeito, mas não funciona!!
o basicao é isso...
public static function numeroAleatorio(){ $query = "SELECT * FROM Rand WHERE numero = :numero;" ; $dbh = new PDO('mysql:host=localhost;dbname=aleatorio', 'root', ''); $stmt = $dbh->prepare($query); do { $res = rand(10,99); $stmt->execute(array(':numero' => $res)); $row = $stmt->fetchAll(PDO::FETCH_ASSOC);} while(count($row) > 0); return $res; } public function insertCad($arrVar) { $numero= numeroAleatorio(); $this->insertDB( "Rand", "?,?,?", array( $numero, $arrVar['nome'], $arrVar['email'] ) ); ....
como faz para o resultado retornar para $numero???
se eu coloco $numero = '23'; funciona, mas quando peço para chamar o valor da outra função, não da em nada....
-
Boa tarde amigos,
estou batendo a cabeça em uma questão de css, que não é nem de longe o meu forte...
quero colocar umas bandeirinhas de backgroudo de uma div, porem não consigo faze-las ficarem lado a lado...
background: url("be.png") no-repeat , url("us.png") no-repeat, url("au.png") no-repeat, url("br.png") no-repeat, url("ca.png") no-repeat, url("de.png") no-repeat,
consigo repetir, mas quando é para colocar lado a lado ão funciona,
o que devo substituir o no-repeat ali?
muito obrigado!
-
Olá amigos,
estou dando uma estudada e me chegou a seguinte "barreira":
Quero montar uma função que altere a classe do botao após o usuario selecionar o checkbox
Usando o alternador entre disabled true e false esta funcionando, porem para o meu problema, não está resolvendo
então estava tentando juntar umas peças e cheguei a isto: (mas não funciona)
function trC(element, antigo, novo) { element.classList.remove(antigo); element.classList.add(novo); } function HabiDsabi(){ if(document.getElementById('habi').checked == true){ document.getElementById('envia').disabled=false; var klas = document.getElementsByClassName('btn btn-success'); trC(klas, 'btn btn-success', 'btn btn-success start'); } if(document.getElementById('habi').checked == false){ document.getElementById('envia').disabled=true; } }
como eu faço funcionar??
o habilitar e desabilitar está funcionando,
só mudar a classe que não estou conseguindo....
botao:
<form> <button disabled="disabled" class="btn btn-success" name="envia" id="envia" value="Enviar" > <span>botao</span> </button> <input type="checkbox" name="habi" id="habi" onClick="HabiDsabi()" > <span>habilita/desabilita<span> </form>
Resumindo:
quero transformar
class="btn btn-success"
em
class="btn btn-success start"
quando a caixa estiver selecionada
alguém consegue me dar uma luz?
-
Em 22/04/2019 em 22:39, Leonardo Persan disse:
Tenta assim:
<?php $query = "SELECT * FROM aleatorio WHERE id = :numero ;" ; $dbh = new PDO('mysql:host=localhost;dbname=testes', 'root', ''); $stmt = $dbh->prepare($query); do { $numero = rand(1,9); $stmt->execute(array(':numero' => $numero)); $row = $stmt->fetchAll(PDO::FETCH_ASSOC); } while(count($row) > 0); echo $numero;
p****... funcionou hehehehe
massa demais!!!!!!!!
valeu mais uma vez amigo. p*** professor!!!
-
Em 22/04/2019 em 22:42, Leonardo Persan disse:
Tenta assim:
SELECT * FROM tabela WHERE cores LIKE '%vermelho%' AND estampa LIKE '%bolinha%'
ahhhhh, eu estava colocando o WHERE novamente apos o AND, acho q isso q tava dando pau!!
Funcionou certinho!!
obrigado novamente!!
uma curiosidade, existe diferença escrever dessas duas formas?
SELECT * FROM tabela WHERE (cores LIKE 'vermelho') AND (estampa LIKE 'bolinha');
e assim
SELECT * FROM tabela WHERE cores LIKE 'vermelho' AND estampa LIKE 'bolinha';
Ou é so disperdicio de caracteres para escrever a mesma coisa?
abraço, muito obrigado mais uma vez!
-
Gostaria de listar da seguinte forma
por ex:
SELECT * FROM tabela WHERE cores LIKE 'vermelho' - mas que desse resultado, liste apenas os que contenham 'bolinha' no estampa
como eu escrevo isso para o sql?
eu tentei com o "...AND WHERE estampa LIKE bolinha" mas ele vai exibir todos os resultados das duas buscas, e o OR também listara todos os resultados
-
22 horas atrás, Leonardo Persan disse:
Você deve usar o loop while
https://www.php.net/manual/pt_BR/control-structures.while.php
Fala Leonardo,
cara, até entendi o conceito, mas não consigo imaginar isso em uma função que fuja dos exemplos do manual.
Voce sabe como eu conseguiria expressar o que eu preciso com o WHILE?
repetir a buscar até retornar 0
<?php srand((double)microtime()*1000000); $numero = rand(1,9); $query = "SELECT * FROM aleatorio WHERE id = :numero ;" ; $dbh = new PDO('mysql:host=localhost;dbname=testes', 'root', ''); $stmt = $dbh->prepare($query); $stmt->execute(array(':numero' => $numero)); $row = $stmt->fetch(PDO::FETCH_ASSOC); while($row !== 0){ //repetir o processo rand // não tenho ideia o que colocar aqui }else{ echo $numero; } ?>
-
Olá, eu gostaria de fazer uma função simples, apenas para aprendizado.
Eu fiz desta forma:
$query = "SELECT * FROM aleatorio WHERE id = :id ;" ; srand((double)microtime()*1000000); $numero = rand(1,9); $ncrip = $numero; $dbh = new PDO('mysql:host=localhost;dbname=testes', 'root', ''); $stmt = $dbh->prepare($query); $stmt->execute(array(':id' => $numero)); $row = $stmt->fetch(PDO::FETCH_ASSOC); if ($row == 0){ true; }else{ header( "refresh:0;url=cadastra.php" ); } ?>
Funciona, mas toda vez que a função encontra um numero de 1 a 9 cadastrado no db ela atualiza a página, escolhe outro numero aleatorio e testa se aquele encaixa, atualiza a pagina........
até que uma hora ela encontra um "espaço" e para de atualizar a pagina..
o que eu gostaria de fazer é que ela ficasse gerando aleatorios e consultando até encontrar o espaço e continuar a leitura, sem mudar de pagina, somente dentro da função
ex
gera aleatorio (1,9)
se $resultado == 1
repete gera aleatorio
}
se $resultado == 0
continua.....
mas como faz isso???
fiquei com essa duvida e não estou conseguindo solucionar
-
legal!!!
valeu mesmo!!
aprendi muito!!!
😁😁😁
-
26 minutos atrás, Leonardo Persan disse:
Se ele for administrar isso através de um painel precisa sim.
entendi, mas não daria para criar uma coluna prazo com uns valores 1, 2, 3
e fazer por php para ficar menos dados dentro da tabela?
por exemplo
se $valorTotal maior ou igual 1400, defina $prazo como 3
se $valorTotal maior igual 700, defina $prazo como 2
se $valorTotal menor 700, defina $prazo como 1ai usar o switch$prazo, caso '1' define $variaveis.. caso '2'..assim por diante
ou calcular por modulus % , já que o caso seria cada X reais é mais uma parcela
só por dúvida mesmo, sou bem leigo e quero aprender tudo que der o mais rapido possivel hehe
porque eu acho que se for para incluir todos os dados, a exibição poderá ficar mais lenta, não é?
e com os dados todos pré definidos na propria pagina usando um require, ele so teria que retornar 1 valor
estou errado? é impraticavel?
-
perfeito!!!
funcionou redondinho!!!!
muito obrigado mais uma vez amigo!!
só para eu entender o codigo...
\d seria para dizer que somente numeros na {quantidade} ou [letras e numeros #essa parte não entedi,seria para dizer que qualquer quantia?# ] + obrigatoriamente um @ junto com um [letras e numeros #essa parte não sei#] + obrigatoriamente um ponto seguido por somente letras na quantidade entre 2 e 4... correto?
o que seria o ._%+- e o .- ?
-
isso não existe!
é imagem ou texto, não existe imagem com texto
coloque a imagem sem texto em fundo de DIV e jogue o texto por cima, ai da certo
-
amigo, tem que tirar o desfoque nas configuracoes de exportação do fireworks, não sei porque diabos eles deixam isso como padrão, mas bem suave, você deve ter mexido nisso por engano em algum momento e acabou ficando como padrão.
veja em exportar como, la tera configuracoes desse tipo
-
no fireworks não existe essa função, pelo menos nunca vi, você vai conseguir via gambiarra
você pega o texto PALADINS
e coloca sombra, aquela que fica redonda mesmo, e então vc "apara" com a ferramenta de selecao
a parte interna a mesma coisa,
você deixa o texto transparente e joga ele com efeito na camada de baixo...
ta feita agambiarra, so exportar ninguém fica sabendo.
-
Outra coisa que reparei, que entre 1400,00 e 1401,00 existem outros 99 resultados que vao dar erro, teria que ser 1400,00 e 1400,01
-
acho que os prazos e valores não precisam ficar na tabela amigo
Leonardo com certeza vai te ajudar, mas achoq a sua resposta esta na propria pergunta
Se o valor < que X {exiba prazo 1}
Se o valor esta entre x e y {exiba prazo 2}
se valor > que y {exiba prazo 3}
ou se nenhum {não exiba prazo}
Como exibir informações ?
em Lógica de Programação
Postado
Boa noite amigos,
gostaria de que alguém que tenha passado por isso ou saiba como solucionar me de uma luz..
como eu faco para "dizer" ao sistema quais informacoes exibir?
explicando onde eustou batendo a cabeça....
Tenho 6 informacoes coletadas de um usuario vinda de um banco de dados
EX BD-> Usuario - info1 - info2 - info3 - info4 - info5 - info6 - status
então eu usaria o switch case para decidir quais informacoes seria exibidas
ex: case $status = 1, echo $info1, $info3, $info
case $status = 2, echo $info2, $info5
só que é totalmente inviavel com tantos campos...
então pensei em mudar o BD
e colocar uma coluna ao lado de cada campo já existente com um exibe = 'true' ou = 'false'
ex: usuario - info1 - e_i1- info2 - e_i12 ......
gambiarra horrivel tambem
pensei em colocar o status para armazenar quais ele deveria exibir vinda de um array_push
ex: status [1-2-6]
e cortar com explode no "-"
parece ser o menos gambiarra das 3 solucoes que eu pensei...
e ai...
qual o jeito que voce faz?
qual o jeito certo?
por qual linha devo iniciar as pequisas??
desde já, valeu a ajuda!!!
abraço