Ir para conteúdo

POWERED BY:

Arquivado

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

drx

Insert sem criar uma nova linha

Recommended Posts

Olá pessoal !

 

Eu tenho uma tabela e tenho 3 linhas já populadas. Nessas linhas eu tenho um controle 1, 2 e 3 respectivamente em cada linha.

Tenho de inserir o nome do vídeo1, 2 e 3 na mesma linha. Isto vai acontecer nas 3 linhas.

 

Como que eu insiro com "mysql pdo" sem criar nova linha e preencher somente o campo vídeo da tabela?

 

 

// Recupera os dados dos campos do html

$controle = $_POST["controle"]; // esta variável eu seleciono em um select option

$vid = $_POST["videos"]; // esta variável eu seleciono em um select option

 

 

controle dia evento video1 video2 video3

1 10 aaaaaaaa inserir aquí inserir aquí inserir aquí

2 20 bbbbbbbb

3 25 ccccccccc

 

 

Neste caso eu posso colocar algum parâmetro a mais, tipo where controle= $controle and video=$vid ?

 

// insert com PDO
$stmt = $pdo->prepare('INSERT INTO tabela (controle, vid) VALUE (:controle, :videos)');
$stmt->bindValue(':controle', $controle);
$stmt->bindValue(':videos', $vid);
$vid = 'vid';
$stmt->execute();
Desde já agradeço !!!

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok ! Vou tentar com o update.

Por hora, muito obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Beraldo!

 

Não estou conseguindo atualizar. Veja bem:

 

// Recupera os dados dos campos do html

$controle = $_POST["controle2"]; // esta variável eu seleciono em um select option

$vid = $_POST["videos"]; // esta variável eu seleciono em um select option (nome do campo)

 

//Realizando a consulta e a atualização no campo
$atualizar=$pdo->prepare("UPDATE tabela SET videos = :vid WHERE controle = :controle2");
$atualizar->bindValue(":controle2", $controle);
$atualizar->bindValue(":videos", $vid);
$atualizar->execute();
Ou seja; o campo que está vazio e deve ser preenchido é: $vid que é igual ao campo "video-1", por exemplo.
Então ele vai procurar pelo campo "controle" e pelo campo "vid"

campos---> controle dia evento video-1 video-2 video-3

conteúdo--> 1 10 aaaaaaaa nome vídeo nome vídeo nome vídeo

2 20 bbbbbbbb

3 25 ccccccccc

Compartilhar este post


Link para o post
Compartilhar em outros sites

O nome da tabela é "tabela" mesmo? :unsure:

 

Habilite todas as exibições de erro como mostrado neste tópico.

Também use errorInfo para verificar se o PDO retornou erros. Veja exemplos aqui: http://www.ultimatephp.com.br/como-usar-pdo-com-banco-de-dados-mysql/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não. É só exemplo. O nome é "w_aconteceu"

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique também a sintaxe da instrução update; nesse seu exemplo:

 

"UPDATE tabela SET videos = :vid WHERE controle = :controle2"

veja que nessa tabela não há a coluna "videos":

campos---> controle dia evento video-1 video-2 video-3

conteúdo--> 1 10 aaaaaaaa nome vídeo nome vídeo nome vídeo

2 20 bbbbbbbb

3 25 ccccccccc

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem lembrado Fernando, porém o php não entende como campo um valor do select option ?

 

Por exemplo: uma seleção "video-1" e passada como variável igual mostrei no post acima >>>>>>>

 

$vid = $_POST["videos"]; // esta variável eu seleciono em um select option (nome do campo)

 

Senão terei de fazer estaticamente. Como eu atualizaria os campos video-1, video-2, video-3 ?

 

Dede já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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