Ir para conteúdo

Arquivado

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

  • 0
viniciussmelo

Redimensionar o tamanho da imagem em um while

Pergunta

Gostaria de saber como eu dar um tamanho de imagem padrão quando executo este while:

 

echo"
			<table id='tabela'>
				<thead>
					<tr>
						<td>Imagem da questão:	</td>
						<td>Matéria da questão:</td>
						<td>Questão :</td>
						<td>Resposta :</td>
						<td>Email de quem cadastrou: </td>
					</tr>
				</thead>
				</table>";

			while($escrever=mysql_fetch_array($res)){

						echo'<table>
						<tr>
						<td><img src="' . $escrever['imagemQuestao'] . '" width="100" height="100"/></td>
						 <td>' .  $escrever['materiaQuestao'] . '</td>
						 <td>' .  $escrever['Questao'] . '</td>
						 <td>' .  $escrever['Resposta'] . '</td>
						 <td>' .  $escrever['nomeProf'] . '</td>
						</tr>
						</table>';
			}

Com esse código está vindo o formato original apenas

Compartilhar este post


Link para o post
Compartilhar em outros sites

4 respostas a esta questão

Recommended Posts

Olá. Para de trabalhar com  imagens em Loops se todas não tiver o mesmo tamanho pode causar um sério problemas de estética e deformação do CSS, esse problema seria se você fosse exibir elas lado a lado por exemplos em colunas de 2 ou 3.
Se exibir dentro de tabelas dá para controlar a situação, desde que você faça uma tabela para imagem, e for em DIVs é complicado flutuar imagens de tamanhos distintos lado a  lado ou uma em baixo da outra de forma harmônica!

É possível controlar a largura de uma imagem para todas terem a mesma largura, e assim a altura é definida de forma automática respeitando as dimensões em duas proporções originais.

<img class="fig_home" src="endereco_imagem" alt="Ver Detalhes" width="205" border="0">

No exemplo cima, todas elas terão 205 de largura, porém cada uma terá uma altura diferente devido a proporção.
Eu numa época tentei de vária formas formatar imagens para se ajustar em linha independente do seu tamanho, mas não obtive sucesso, cheguei numa conclusão que o correto é enviar a imagem do tamanho adequado. Eu então redimenciono a largura e as alturas sendo todas iguais irá deixar a tela perfeita.

No anexo eu mostro o que acontece com imagens de alturas diferentes flutuando lado a lado!

Abraços!
 

divs.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites
9 horas atrás, Fábio BN disse:

Olá. Para de trabalhar com  imagens em Loops se todas não tiver o mesmo tamanho pode causar um sério problemas de estética e deformação do CSS, esse problema seria se você fosse exibir elas lado a lado por exemplos em colunas de 2 ou 3.
Se exibir dentro de tabelas dá para controlar a situação, desde que você faça uma tabela para imagem, e for em DIVs é complicado flutuar imagens de tamanhos distintos lado a  lado ou uma em baixo da outra de forma harmônica!

É possível controlar a largura de uma imagem para todas terem a mesma largura, e assim a altura é definida de forma automática respeitando as dimensões em duas proporções originais.

<img class="fig_home" src="endereco_imagem" alt="Ver Detalhes" width="205" border="0">

No exemplo cima, todas elas terão 205 de largura, porém cada uma terá uma altura diferente devido a proporção.
Eu numa época tentei de vária formas formatar imagens para se ajustar em linha independente do seu tamanho, mas não obtive sucesso, cheguei numa conclusão que o correto é enviar a imagem do tamanho adequado. Eu então redimenciono a largura e as alturas sendo todas iguais irá deixar a tela perfeita.

No anexo eu mostro o que acontece com imagens de alturas diferentes flutuando lado a lado!

Abraços!
 

divs.jpg

Tinha pensado nisso, mas não sabia como fazer.. no caso pesso para o cara anexar a imagem, e como redimensiono ela ?

//Pedindo a imagem
<input id = "fotos" onclick="mensagem()" name="fotos" type="file" size="50" >

//minha estrutura de condição para verificar o tamanho
if (!empty($foto['name'])) 
	{
		// Largura maxima em pixels
		$largura = 500;
		// Altura maxima em pixels
		$altura = 500;
		// Tamanho maximo do arquivo em bytes
		$tamanho = 1000000;
	      
    	// Verifica se o arquivo é uma imagem (extensões)
    	if(!preg_match("/^image\/(jpg|jpeg|png|gif|bmp)$/",$foto['type'])){
     	   $error[1] = "Não é uma imagem...";
   	 	} 
	
		// capturar as dimensoes da imagem
		$dimensoes = getimagesize($foto['tmp_name']);
 
		// Verifica se a altura da imagem  é maior que a altura permitida
		if($dimensoes[1] > $altura) {
			$error[3] = "Altura da imagem não deve ultrapassar ".$altura." pixels";
		}
		
		// Verifica se o tamanho da imagem é maior que o tamanho permitido
		if($foto['size'] > $tamanho) {
   		 	$error[4] = "A imagem deve ter no máximo ".$tamanho." bytes";
		}
 
		
		// Se não houver nenhum erro
		if ($error == 0) {
		
			// Pega extensao da imagem
			preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i",$foto['name'],$ext);
			
        	// Gera um nome unico para a imagem
        	$nome_imagem = md5(uniqid(time())).".".$ext[1];

        	// Caminho de onde ficar� a imagem
        	$caminho_imagem = "imagens/".$nome_imagem;		

			// Faz o upload da imagem para seu respectivo caminho
			move_uploaded_file($foto['tmp_name'],$caminho_imagem);
			
			$sql = "INSERT INTO cadastroquestoes (materiaQuestao, Questao, Resposta, imagemQuestao ,nomeProf) VALUES ('$materiaCad','$questaoCad', '$resposta' ,'$caminho_imagem','$emailProf')";
			
  		    $res = mysql_query($sql);

          if ($res)
      {
          echo"<script language='javascript' type='text/javascript'>
  		  alert('Questao cadastrada com Sucesso!!!');
          window.location.href='cadastroMaterias.php';</script>";
          die();
      }
      else
      {
          echo 'Falha ao gravar questao !!! ';
      }
    }
  }
  else{
	  $caminho_imagem = 'imagens/nCad.jpg';
	  $sql = "INSERT INTO cadastroquestoes (materiaQuestao, Questao, Resposta, imagemQuestao ,nomeProf) VALUES ('$materiaCad','$questaoCad', '$resposta' ,'$caminho_imagem','$emailProf')";
			
  		    $res = mysql_query($sql);

          if ($res)
      {
          echo"<script language='javascript' type='text/javascript'>
  		  alert('Questao cadastrada com Sucesso!!!');
          window.location.href='cadastroMaterias.php';</script>";
          die();
      }
      else
      {
          echo 'Falha ao gravar questao !!! ';
      }
  }
}

Mas com isso apenas da um erro do tamanho e não redimensiona ela. Alguma dica para montar o código  para redimensionar a imagem ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem. Eu nunca usei Script de redimensionar, pois eu mesmo envio imagens então eu faço isso no Photoshop.

Talvez para dar certo precisaria usar algo mais avançado, algo que se assemelhe aos Scripts de redes sociais cujo consigamos pegar uma imagem não padronizada e delimitar o que queremos que sejam exposto na tela no ato do envio.

Pois se você pegar imagens de alturas distintas e tentar deixar todas do mesmo tamanho, não dá muito certo, precisaria ter um quadro de pixel fixo e adequar a imagem dentro deste quadro, não sei se existe algum recurso que faça isso. O jeito que você fez de deixar a exibição de largura e altura  fixa de 500 x 500 funciona mas deforma a imagem caso ela não seja um quadrado perfeito. 

Se você tiver exibindo imagens não lado a lado, quando você for exibir ela na página, você define apenas a largura, assim a altura entra automática e a imagem fica perfeita, só não funciona se você for exibir lado a lado, mas e for uma por linha dá certo.

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 17/11/2017 at 11:59, Fábio BN disse:

Bem. Eu nunca usei Script de redimensionar, pois eu mesmo envio imagens então eu faço isso no Photoshop.

Talvez para dar certo precisaria usar algo mais avançado, algo que se assemelhe aos Scripts de redes sociais cujo consigamos pegar uma imagem não padronizada e delimitar o que queremos que sejam exposto na tela no ato do envio.

Pois se você pegar imagens de alturas distintas e tentar deixar todas do mesmo tamanho, não dá muito certo, precisaria ter um quadro de pixel fixo e adequar a imagem dentro deste quadro, não sei se existe algum recurso que faça isso. O jeito que você fez de deixar a exibição de largura e altura  fixa de 500 x 500 funciona mas deforma a imagem caso ela não seja um quadrado perfeito. 

Se você tiver exibindo imagens não lado a lado, quando você for exibir ela na página, você define apenas a largura, assim a altura entra automática e a imagem fica perfeita, só não funciona se você for exibir lado a lado, mas e for uma por linha dá certo.

Abraços!

Valeu a atenção!

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, ativo. Nela tem cadastrado vários itens. No campo ativo eu coloco a letra "S" para informar que este item está ativo no sistema. Por exemplo: 1, casa, S 2, mesa, S 3, cama, S 4, moto S 5, rádio O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "produtos" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, mesa, moto 2, mesa, casa, cama 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela produtos da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "mesa". Preciso fazer com que o php me liste todos os registros da tabela "produtos" que contenham a palavra "mesa". Até aqui tudo bem eu consigo listar. Estou fazendo assim: <?php $item = "mesa" $sql = mysqli_query($conn, "SELECT * FROM produtos WHERE item1 LIKE '$item' OR item2 LIKE '$item' OR item3 LIKE '$item' LIMIT 10"); while($aux = mysqli_fetch_assoc($sql)) { $id = $aux["id"]; $item1 = $aux["item1"]; $item2 = $aux["item2"]; $item3 = $aux["item3"]; echo $id . " - " . $item1 . ", " . $item2 . ", " $item3 . "<br>"; } ?> O problema é que está listando todos os registros que contém o item mesa. Eu preciso que o php verifique os demais item e me liste somente os registro em que todos os registros estejam ativos no sistema. No exemplo acima ele não deveria listar o registro 3. pois nesse registro contém o item "radio" e este item não está ativo no sistema. Ou seja, o registro "radio" na tabela itens não possui um "S" na coluna "ativo". Alguém sabe como resolver isso?
    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
×

Informação importante

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