Salvar múltiplas fotos em uma coluna MySQL

  • Autor Autor suenajoven
  • Data de início Data de início
Este tópico foi traduzido automaticamente do espanhol. Ver original
S

suenajoven

Épsilon
Olá amigos
gostaria de salvar os dados de um array em uma única coluna do mysql
exemplo :
array[0]=foto0.jpg
array[1]=foto1.jpg
array[2]=foto2.jpg

agora, nem sempre o array é de 3 elementos, algumas vezes são mais
por isso gostaria de salvar no banco de dados desta forma
fotos = foto0.jpg,foto1.jpg,foto2.jpg

como posso fazer uma função que percorra os arrays e os salve dessa forma no banco de dados?
Obrigado desde já
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Olá amigos
gostaria de salvar os dados de um array em uma única coluna do mysql
exemplo :
array[0]=foto0.jpg
array[1]=foto1.jpg
array[2]=foto2.jpg

agora, nem sempre o array é de 3 elementos, algumas vezes são mais
por isso gostaria de salvar no banco de dados desta forma
fotos = foto0.jpg,foto1.jpg,foto2.jpg

como posso fazer uma função que percorra os arrays e os salve dessa forma no banco de dados?
Obrigado desde já

use json_encode para salvar e json_decode para obter os dados... senão também pode usar explode e implode.....
json
PHP:
<?php
$array[0]='foto0.jpg';
$array[1]='foto1.jpg';
$array[2]='foto2.jpg';
$mysqli->query("INSERT INTO tabla VALUES(".json_encode($array).")";
$SQL = $mysqli->query("SELECT * FROM tabla WHERE 1");
$ROW = $SQL->fetch_assoc();
$array = json_decode($ROW['dato'],true);
?>

implode/explode
PHP:
<?php
$array[0]='foto0.jpg';
$array[1]='foto1.jpg';
$array[2]='foto2.jpg';
$mysqli->query("INSERT INTO tabla VALUES(".implode("|",$array).")";
$SQL = $mysqli->query("SELECT * FROM tabla WHERE 1");
$ROW = $SQL->fetch_assoc();
$array = explode("|",$ROW['dato']);
?>
 
$cadena = implode(",", $array);
E salva $cadena no DB.
 
Olá amigos
gostaria de salvar os dados de um array em uma única coluna do mysql
exemplo :
array[0]=foto0.jpg
array[1]=foto1.jpg
array[2]=foto2.jpg

agora, nem sempre o array é de 3 elementos, algumas vezes são mais
por isso gostaria de salvar no banco de dados desta forma
fotos = foto0.jpg,foto1.jpg,foto2.jpg

como posso fazer uma função que percorra os arrays e os salve dessa forma no banco de dados?
Obrigado desde já

Se você precisa fazer isso é porque está pensando errado o banco de dados e isso vai te trazer problemas mais adiante :ghost:
 
Se você precisa fazer isso é porque está pensando errado o banco de dados e isso vai te trazer problemas mais adiante :ghost:

É verdade o que ele comenta, só seria aplicável se você usasse um banco de dados NoSQL, mas para MySQL deveria salvar cada imagem como uma tupla (Registro).
 
Concordo com a solução do clicklow.
JSON é muito prático.
 
É verdade o que ele comenta, só seria aplicável se você usasse um banco de dados NoSQL, mas para MySQL deveria salvar cada imagem como uma tupla (Registro).
bem, eu faço isso pelo motivo de não encher muitos dados
e no momento de imprimir só farei um simples preg_match_all e poderei imprimir todas as imagens
 
bem, eu faço isso pelo motivo de não encher muitos dados
e no momento de imprimir só farei um simples preg_match_all e poderei imprimir todas as imagens

Se você fizer bem com 1 simples consulta também consegue todas as imagens e te garanto que é mais fácil de administrar
 
Voltar
Topo