Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mbmesquita

Não consigo acrescentar INPUT text no meu formulário

Recommended Posts

9 minutos atrás, Prog disse:

Tire todo o IF e rode apenas mysqli_query(); faça um print no $sql também.

 

Exemplo:

 


$sql = " INSERT INTO feedback_recebido3 (id_usuario, cidade2, saloes_ava, servicosava, valorapx, atendimento, servico1, tde, ambiente, comentarios)values($id_usuario,'$cidade', '$saloes', '".$opcao."', '$valorapx', '$atendimento', '$servico', '$tde', '$ambiente', '$coment') ";

print $sql;
mysqli_query($conexao, $sql);

/*if(mysqli_query($conexao, $sql)){
	header('Location: feedsucesso.php') ;
} else {
echo 'Erro ao tentar inserir o registro';
}*/

 

Prog, retornou isso:

 

INSERT INTO feedback_recebido3 (id_usuario, cidade2, saloes_ava, servicosava, valorapx, atendimento, servico1, tde, ambiente, comentarios)values(1,'1', 'Beleza Pura', '10', '75', '10', '10', '10', '10', 'Teste, teste, teste, teste, teste')

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse id_usuario é primary key? Ou é apenas o id do usuário que está logado?

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, jamesbond disse:

Esse id_usuario é primary key? Ou é apenas o id do usuário que está logado?

 

é apenas o id do usuário que ta logado

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, mbmesquita disse:

 

é apenas o id do usuário que ta logado

Poderia exibir a modelagem do seu banco de dados?

Da tabela que você está tentando inserir os registros.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Agora, Prog disse:

E não deu mensagem de erro? Não inseriu o registro?

Pois é, caso não tenha inserido talvez as colunas na query estão erradas...

Compartilhar este post


Link para o post
Compartilhar em outros sites
11 minutos atrás, jamesbond disse:

Poderia exibir a modelagem do seu banco de dados?

Da tabela que você está tentando inserir os registros.

 

10 minutos atrás, Prog disse:

E não deu mensagem de erro? Não inseriu o registro?

 

Aparentemente não há nenhum problema.

 

jamesbond e Prog Obrigado pela ajuda, conseguir resolver, montei a tabela no banco de dados de novo e simplesmente funcionou corretamente, muito obrigado!

Agora com a questão das checkbox, tem alguma luz pra me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites
24 minutos atrás, mbmesquita disse:

 

 

jamesbond e Prog Obrigado pela ajuda, conseguir resolver, montei a tabela no banco de dados de novo e simplesmente funcionou corretamente, muito obrigado!

Agora com a questão das checkbox, tem alguma luz pra me ajudar?

Qual seria o problema com as checkbox?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Citar

jamesbond

 

Elas estão tudo ok, vão pro banco de dados somadas e tudo ok, só que eu gostaria que além de enviar pro banco de dados os valores somados, também fosse para o banco os nomes, de cada checkbox selecionada, entendeu mais ou menos?

 

E eu não tenho ideia de como fazer isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como assim o nome de cada checkbox selecionada?

Você diz o name do input ou nome correspondente ao id do value?

 

Você está trabalhando  com relacionamento de tabelas.

Não tem necessidade de salvar no banco de dados o nome,

sendo que esses serviços talvez já estejam salvo em uma tabela servicos.

 

Quando você quiser exibir o nome de acordo com o ID escolhido,

basta você retornar apenas o nome daquele ID.

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 minutos atrás, jamesbond disse:

Como assim o nome de cada checkbox selecionada?

Você diz o name do input ou nome correspondente ao id do value?

 

Você já trabalhando relacionando tabelas. Não tem necessidade de salvar no banco de dados o nome, sendo que esses serviços talvez já estejam salvo em uma tabela servicos.

Quando você quiser exibir o nome de acordo com o ID escolhido, basta você retornar apenas o nome daquele ID.

 

Sim, to trabalhando com tabelas relacionadas, mas nessa parte do checkbox não ta relacionado com nenhuma outra, porque ao escolher o serviço que fez, ela recebe a pontuação de cada serviço, só que para um controle interno queria saber exatamente qual serviço que a pessoa fez, entende? Porque no caso, só vai os valores somados e cai tudo em uma coluna da tabela, não em várias, entende?

 

<label for="servicosava1" >Serviços</label>
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Corte <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="4" />Escova <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Chapinha <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="5" />Pintura <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="5" />Hidratação <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="9" />Progressiva <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="10" />Outra Química <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Unha <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="4" />Depilação <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="10" />Penteado <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="10" />Maquiagem <br />
		<input type="checkbox" name="servicosava[]" onclick="verificar()" value="3" />Sombrancelha <br />

 

No caso eu queria que a pessoa, ao selecionar os 3 primeiros inputs, caísse a soma dessas checkbox na coluna respectiva dela, que seria 10, e também o serviço que ela selecionou, caindo no banco de dados em algum lugar, ou colunas diferentes, ou todos em uma coluna só, mais ou menos isso que eu preciso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Antes de você fazer a soma você retorna os nome ou pega os id dos respectivos

e depois joga na query para saber os selecionados. 

 

Você tem que entender que os ID estão lá,

você só os perde após efetuar a soma.

 

Basta você decidir em salvar o nome de cada ou apenas os id.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi mais ou menos, teria como mostrar um exemplo só de um para ter uma noção de como fazer? 

 

Porque no caso, esses valores somados são retornados em uma outra página, somando todos os valores dessa coluna por id de usuário logado, então eu não poderia retornar esses ID na mesma coluna, pois não retornaria os valores na outra página, certo ou errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, mbmesquita disse:

Entendi mais ou menos, teria como mostrar um exemplo só de um para ter uma noção de como fazer? 

 

Porque no caso, esses valores somados são retornados em uma outra página, somando todos os valores dessa coluna por id de usuário logado, então eu não poderia retornar esses ID na mesma coluna, pois não retornaria os valores na outra página, certo ou errado?

O usuário seleciona os serviços no checbox -> envia o formulário -> você recebe todos esses dados -> através do for você checa a quantidade de serviços selecionados para poder somar -> você perde o id dos serviços

 

O fluxo que acontece é esse.

Me responda uma coisa, os números value do checkbox

é correspondente ao tipo do serviço ou o que?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, entendi o fluxo, só que antes de perder o id dos serviços, teria como mandar para alguma coluna na tabela, ou para algum lugar, não sei?!

 

São correspondentes ao tipo de serviço, só que alguns serviços tem o mesmo value, a mesma pontuação no caso.

Compartilhar este post


Link para o post
Compartilhar em outros sites
12 minutos atrás, mbmesquita disse:

Sim, entendi o fluxo, só que antes de perder o id dos serviços, teria como mandar para alguma coluna na tabela, ou para algum lugar, não sei?!

 

São correspondentes ao tipo de serviço, só que alguns serviços tem o mesmo value, a mesma pontuação no caso.

 

Sobre seus serviços possuírem os mesmos value acho bem estranho, mas enfim...

Rode esse código e veja se é o que queres:

 

<?php
$_POST['servicosava'] = ['2', '3', '5', '10'];

$soma = 0;
$servicos = '';

foreach ($_POST['servicosava'] as $key => $number)
{	
	if ($key == (count($_POST['servicosava']) - 1))
	{
		$servicos .= $number;
	}
	else
	{
		$servicos .= $number.',';
	}

	$soma += $number;
	
}

echo $soma .'<br/>'. $servicos;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem jamesbond, o código rodou, mas não mandou nada pro bando de dados, nem a soma das checks, nem os serviços, nem nada, retornei só o echo e deu isso:

 

20
2,3,5,10

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, mbmesquita disse:

Bem jamesbond, o código rodou, mas não mandou nada pro bando de dados, nem a soma das checks, nem os serviços, nem nada, retornei só o echo e deu isso:

 


20
2,3,5,10

 

Isso é um exemplo apenas. Para você ver como funciona e para que possa adaptar ao seu caso.

O código faz o valor total da soma dos dados enviados via post e

salva os respectivos serviços de acordo com o id.

 

Depois caso seja do seu interesse exibir os serviços,

basta receber essa informação, separar os id com um explode e retornar os nomes.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Rafael_Ferreira
      Não consigo carregar a imagem do captcha do meu formulário. Foi testado com o xampp e easyphp. Também não carregou a imagem de outros captcha. 
       
       
    • Por luiz monteiro
      Olá, tudo bem?
       
      Estou melhorando meu conhecimento em php e mysql e, me deparei com o seguinte. A tabela da base de dados tem um campo do tipo varchar(8) o qual armazena números. Eu não posso alterar o tipo desse campo. O que preciso é fazer um select para retornar o números que contenham zeros a direita ou a esquerda.
      O que tentei até agora
       
      Ex1
      $busca = $conexao->prepare("select campo form tabela where (campo = :campo) ");
      $busca->bindParam('campo', $_REQUEST['campo_form']);
       
      Se a direita da string $_REQUEST['campo_form'] termina ou inicia com zero ou zeros, a busca retorna vazio.
      Inseri dados numéricos, da seguinte maneira para testar: 01234567;  12345670: 12345678: 12340000... entre outros nessa coluna. Todos os valores que não terminam ou não iniciam com zero ou zeros, o select funciona.
       
       
      Ex2
      $busca = $conexao->prepare("select campo form tabela where (campo = 0340000) ");
      Esse número está cadastrado, mas não retorna.
       
      Ex3
      $busca = $conexao->prepare("select campo form tabela where (campo = '02340001' ) ");
      Esse número está cadastrado, mas não retorna.
       
       
      Ex4
      $busca = $conexao->prepare("select campo form tabela where (campo like 2340000) ");
      Esse número está cadastrado, mas não retorna.
       
      Ex5
      $busca = $conexao->prepare("select campo form tabela where (campo like '12340000') ");
      Esse número está cadastrado, mas não retorna.
       
      Ex6
      $busca = $conexao->prepare("select campo form tabela where (campo like '"12340000"' ) ");
      Esse número está cadastrado, mas não retorna.
       
       
      Ex7
      $busca = $conexao->prepare("select campo form tabela where (campo like :campo) ");
      $busca->bindParam('campo', $_REQUEST['campo_form'])
      Não retorna dados.
       
      O  $_REQUEST['campo_form'] é envio via AJAX de um formulário. 
      Usei o gettype para verificar o post, e ele retorna string.
      Fiz uma busca com número 12345678 para verificar o que o select retorna, e também retrona como string.
       
      Esse tipo de varchar foi usado porque os números que serão gravados nesse campo,  terão zeros a direita ou na esquerda. Os tipos number do mysql não gravam zeros, então estou usando esse. O problema é a busca.
      Agradeço desde já.
       
       
    • Por daemon
      Boa tarde,
       
      Eu tenho uma rotina que faz uma leitura do arquivo .xml de vários sites.

      Eu consigo pegar o tópico e a descrição, e mostrar a imagem que esta na pagina do link.
      Para isso utilizo esta função:
      function getPreviewImage($url) { // Obter o conteúdo da página $html = file_get_contents($url); // Criar um novo objeto DOMDocument $doc = new DOMDocument(); @$doc->loadHTML($html); // Procurar pela tag meta og:image $tags = $doc->getElementsByTagName('meta'); foreach ($tags as $tag) { if ($tag->getAttribute('property') == 'og:image') { return $tag->getAttribute('content'); } } // Se não encontrar og:image, procurar pela primeira imagem na página $tags = $doc->getElementsByTagName('img'); if ($tags->length > 0) { return $tags->item(0)->getAttribute('src'); } // Se não encontrar nenhuma imagem, retornar null return null; } // Uso: $url = "https://example.com/article"; $imageUrl = getPreviewImage($url); if ($imageUrl) { echo "<img src='$imageUrl' alt='Preview'>"; } else { echo "Nenhuma imagem encontrada"; }  
      Mas estou com um problema, esta funcão funciona quando coloco em uma pagina de teste.php. Preciso mostrar em uma página inicial diversas fotos de todos os links. (No caso acima só funciona 1).
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, me permita tirar uma dúvida com os amigos.

      Tenho um Formulário onde o Usuário digita todos os Dados necessários.

      Minha dúvida:
      --> como faço após o usuário digitar os dados e salvar, o Sistema chamar uma Modal ou mensagem perguntando se deseja imprimir agora ?

      Grato,
       
      Cesar
    • Por Carcleo
      Tenho uma abela de usuarios e uma tabela de administradores e clientes.
      Gostaria de uma ajuda para implementar um cadastro
       
      users -> name, login, passord (pronta) admins -> user_id, registratiom, etc.. client -> user_id, registratiom, etc...
      Queria ajuda para extender de user as classes Admin e Client
      Olhem como estáAdmin
      <?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Admin extends User {     use HasFactory;            protected $fillable = [         'name',         'email',         'password',         'registration'     ];      private string $registration;     public function create(         string $name,          string $email,          string $password,         string $registration     )     {         //parent::create(['name'=>$name, 'email'=>$email, 'password'=>$password]);         parent::$name = $name;         parent::$email = $email;         parent::$password = $password;         $this->registration = $registration;     } } User
      <?php namespace App\Models; // use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Illuminate\Database\Eloquent\Relations\BelongsToMany; class User extends Authenticatable {     /** @use HasFactory<\Database\Factories\UserFactory> */     use HasFactory, Notifiable;     static string $name;     static string $email;     static string $password;     /**      * The attributes that are mass assignable.      *      * @var list<string>      */     protected $fillable = [         'name',         'email',         'password',     ];          /**      * The attributes that should be hidden for serialization.      *      * @var list<string>      */     protected $hidden = [         'remember_token',     ];     /**      * Get the attributes that should be cast.      *      * @return array<string, string>      */     protected function casts(): array     {         return [             'email_verified_at' => 'datetime',             'password' => 'hashed',         ];     }          public function roles() : BelongsToMany {         return $this->belongsToMany(Role::class);     }       public function hasHole(Array $roleName): bool     {                 foreach ($this->roles as $role) {             if ($role->name === $roleName) {                 return true;             }         }         return false;     }         public function hasHoles(Array $rolesName): bool     {                 foreach ($this->roles as $role) {             foreach ($rolesName as $rolee) {             if ($role->name === $rolee) {                 return true;             }          }         }         return false;     }         public function hasAbility(string $ability): bool     {         foreach ($this->roles as $role) {             if ($role->abilities->contains('name', $ability)) {                 return true;             }         }         return false;     }     } Como gravar um Admin na tabela admins sendo que ele é um User por extensão?
      Tentei assim mas é claro que está errado...
      public function store(Request $request, Admin $adminModel) {         $dados = $request->validate([             "name" => "required",             "email" => "required|email",             "password" => "required",             "registration" => "required"         ]);         $dados["password"] =  Hash::make($dados["password"]);                  $admin = Admin::where("registration",  $dados["registration"])->first();                  if ($admin)              return                    redirect()->route("admin.new")                             ->withErrors([                                 'fail' => 'Administrador já cadastrados<br>, favor verificar!'                   ]);                            $newAdmin = $adminModel->create(                                    $dados['name'],                                    $dados['email'],                                    $dados['password'],                                    $dados['registration']                                 );         dd($newAdmin);         $adminModel->save();         //$adminModel::create($admin);                  return redirect()->route("admin.new")->with("success",'Cadastrado com sucesso');     }  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.