Ir para conteúdo

Arquivado

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

patricias

na modelagem do Banco

Recommended Posts

você nao pode deletar a imagem que esta cadastrada na tabela noticias

 

ja pensou tem uma noticia na pagina principal do site e um vai la sem querer e deleta a imagem ? a noticia ia ficar sem imagem correto?

 

por isso que fiz assim pra bloquear o delete da imagem relacionada ,mas você pode deletar a noticia normal que a imagem nao sera deletada porque a imagem pode ser usada em mais de uma noticia

 

em outros casos se a imagem só serve para aquela tabela pode se fazer um cascade para quando deleta-se um registro o sistema deletaria todas imagens relacionadas a ele, assim nao ficaria imagens sobrando

Compartilhar este post


Link para o post
Compartilhar em outros sites

você nao pode deletar a imagem que esta cadastrada na tabela noticias

 

ja pensou tem uma noticia na pagina principal do site e um vai la sem querer e deleta a imagem ? a noticia ia ficar sem imagem correto?

 

por isso que fiz assim pra bloquear o delete da imagem relacionada ,mas você pode deletar a noticia normal que a imagem nao sera deletada porque a imagem pode ser usada em mais de uma noticia

 

em outros casos se a imagem só serve para aquela tabela pode se fazer um cascade para quando deleta-se um registro o sistema deletaria todas imagens relacionadas a ele, assim nao ficaria imagens sobrando

prontinho, estou aqui ja...esperando o proximo capitulo da aula...rs[

 

Fabyo, obrigada pela paciencia......

 

mas...ja vi que joguei R$39,00 no lixo ao comprar o cdzinho...fala sério!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fabyo então.. acho que você me confundiu mais ainda..o que eu não posso deletar é a imagem que está na tabela imagens.. porque na tabela notícias eu vou ter só o id dela..se eu deletar a notícia beleza.. a imagem continua lá..daí o que eu não vou poder fazer é deletar a imagem.. é isso né?eu acho que já entendi.. mas só pra não ficar dúvida!assim que der vou ficar testando isso.. daí aprendo direito!vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Fabyo!! altos cabeça em modelagem de dados você!Entendi bem massa... já criei 3 tabelas que irão funcionar pra valer..só falta ir testando..que nem diz a patrícia, show de bola!!-------------------- não dá pra fazer outro post seguido -----------opa!! ó eu de novo... ainda pintou dúvida..Fabyo, se eu quiser deletar uma imagem.. e consequentemente deletar todas as notícias que tinham essa imagem relacionada.. é possível? é o CASCADE isso? ou o CASCADE deletaria a imagem se eu deletasse a notícia?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim isso é cascade se você quisesse fazer isso poderia, claro que no sistema da Patricia nao teria sentido você fazer isso, mas pode ter casos que pode precisar, dai é só usar o cascade

Compartilhar este post


Link para o post
Compartilhar em outros sites

hmm legal! é no meu caso vou precisar!digamos que tenho uma tabela de produtos, e uma onde será gravados dados de vendidos, faturados desse produto.então se eu deletar o produto, não vai mais precisar existir os seus dados.vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fabyo, como ficará o form?

 

<form action="inserir.php" name="cadastra" method="POST" enctype="multipart/form-data" >  <table width="76%" border="0" cellpadding="2" cellspacing="1" class="style1">	<tr>	  <td>CADASTRO DE NOTÍCIAS</td>	</tr>	<tr>	  <td height="385"><table width="91%" border="0" cellpadding="2" cellspacing="1">		  <tr> 			<td width="15%">Título:</td>			<td colspan="4"><input name="titulo" type="text" maxlength="100"></td>			<td width="10%"> </td>		  </tr>		  <tr> 			<td>Notícia:</td>			<td colspan="4" rowspan="6"><textarea name="conteudo" cols="50"  rows="10"></textarea></td>			<td rowspan="6"> </td>		  </tr>		  <tr> 			<td> </td>		  </tr>		  <tr> 			<td> </td>		  </tr>		  <tr> 			<td> </td>		  </tr>		  <tr> 			<td> </td>		  </tr>		  <tr> 			<td> </td>		  </tr>		  <tr> 			<td>Imagem:</td>			<td colspan="4"><input type="file" name="fk_imagem" class="style1" > 			</td>			<td rowspan="2"> </td>		  </tr>		  <tr> 			<td>setor:</td> [color=#FF0000] Aqui ficará como??[/color]			<td colspan="4"> </td>		  </tr>		  <tr> 			<td>Tipo</td>			<td colspan="2"><input type="radio" name="radiobutton" value="radiobutton">			  Sim 			  <input type="radio" name="radiobutton" value="radiobutton">			  Não</td>			<td width="1%" rowspan="3"> </td>			<td width="26%"> </td>			<td rowspan="3"> </td>		  </tr>		  <tr> 			<td>Data:</td>	  [color=#FF0000] Aqui ficará como??[/color]			<td colspan="2" align="right" valign="baseline" nowrap><div align="left"> 			  </div></td>			<td> </td>		  </tr>		  <tr> 			<td> </td>			<td colspan="2">  </td>			<td> </td>		  </tr>		  <tr> 			<td> </td>			<td width="16%"><input name="Submit" type="submit" class="style1" value="Enviar"></td>			<td width="32%"><input name="reset" type="reset" class="style1" id="reset" value="Limpar"></td>			<td colspan="2"> </td>			<td> </td>		  </tr>		</table></td>	</tr>  </table>  <p>  </p></form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro de Noticias</title>
</head>

<body>
<form action="salvar_noticias.php" name="cadastra" method="POST" enctype="multipart/form-data" >
<input type="hidden" name="MAX_FILE_SIZE" value="10000" />
<table width="500" border="0" cellpadding="2" cellspacing="1">
	  <tr>
		<td width="93" height="26">Título:</td>
		<td colspan="2"><input name="titulo" type="text" maxlength="64"></td>
	  </tr>
	  <tr>
		<td height="23">Notícia:</td>
		<td colspan="2" rowspan="2"><textarea name="conteudo" cols="50"  rows="10"></textarea></td>
	  </tr>
	  <tr>
		<td height="143"> </td>
	  </tr>

	  <tr>
		<td height="28">Imagem:</td>
		<td colspan="2"><input type="file" name="fk_imagem" class="style1" >			</td>
	  </tr>
	  <tr>
		<td height="26">setor:</td>
		<td colspan="2"><select name="setores" id="setores">
		  <option selected="selected">Selecione</option>

<?php

mysql_connect("localhost", "usuario", "senha");
mysql_select_db("banco");

$re = mysql_query("select * from setores order by setor");

while($l = mysql_fetch_array($re)) {
$id	= $l["id_setor"];
$setor = $l["setor"];
echo "\t<option value=\"$id\">$setor</option>\n";
}					

?>			  
</select></td>
	  </tr>
	  <tr>
		<td height="26">Destaque</td>
		<td colspan="2" valign="top"><input type="radio" name="radiobutton" value="radiobutton">
		  Sim
		  <input name="radiobutton" type="radio" value="radiobutton" checked>
		Não</td>
	  </tr>

	  <tr>
		<td height="28"> </td>
		<td width="100"><input name="Submit" type="submit" class="style1" value="Salvar"></td>
		<td width="324" valign="top"><input name="reset" type="reset" class="style1" id="reset" value="Limpar"></td>
	  </tr>
	</table>
</form>

</body>
</html>

 

obs: usar tabelas para alinhar o layout ja é ruim e você ainda usou 2 tabelas uma dentro da outra = )

Compartilhar este post


Link para o post
Compartilhar em outros sites

depende, como você ta aprende e tem muita coisa que aprender, você pode usar tabelas depois que você tiver mais acostumada a fazer os sites ai sim estude xhtml, tableless etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fabyo, obrigada por essa paciência viu!

muito show!

 

Olha só, no arquivo salvar_noticias.php, eu preciso colocar todos os campos da tabela noticia na linha do insert?

 

veja se é assim:

mysql_query("INSERT INTO noticias VALUES ('', '$titulo', 'fonte', 'conteudo', 'destaque', 'fk_imagem', 'data')");

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas primeiro você precisa fazer o sistema de upload depois salvar na tabela imagens e pegar o id da imagem e salvar junto com o resto do formulario na tabela noticias

Me explica isso, não entendi, pirei :wacko: esse sistema de upload, é aquele que você me mostrou ontem, certo?eu vou usa-lo aparte? ou será incluido no formulario de cadastro de noticias?ai ai ai..... http://forum.imasters.com.br/public/style_emoticons/default/upset.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Finamente li tudo... demoro mais li...

 

Fabyo sem comentarios.... comentando :P

 

Show de bola... muito bom mesmo... eu tinha algumas duvidas a respeito de modelagem.. sabia o conceito mais num sabia utiliza-las.. gostei...

 

Só uma pergunta...

 

Suponhamos que temos essa tabela...

 

CREATE TABLE setor(	id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,	nome VARCHAR( 40 ) NOT NULL , // nome do setotr	data int(32) NOT NULL, //data que o setor foi criada formato timestamp 32bytes	UNIQUE KEY nome (nome)) TYPE = innodb;CREATE TABLE user (   id_user INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,   nome varchar(50), // nome do usuário   UNIQUE KEY nome (nome)) TYPE = innodb;CREATE TABLE user_setor ( // junção de tabelas....	id_user int(11) unsigned NOT NULL,	id_setor int(11) unsigned NOT NULL,	FOREIGN KEY (id_user)	REFERENCES user(id_user)	ON UPDATE NO ACTION ON DELETE CASCADE,	FOREIGN KEY (id_setor)	REFERENCES setores(id_setor)	ON UPDATE CASCADE ON DELETE RESTRICT,	PRIMARY KEY  (id_user, id_setor)) TYPE = innodb;

Bem...

 

Temos a Tabela User, Setor e a junção...

 

Bem é o seguinte... Eu tive uma prova sobre isso e eu num sabia fazer...

 

lá estava informando o seguinte...

 

insira um usuario para o setor "25"

 

Como eu faria essa inserção???? sem fazer gambiarra...

Compartilhar este post


Link para o post
Compartilhar em outros sites

no teu sistema de upload, eu configurei (não sei se acertei), mas qdo ele vai chamar o arquivo upload.php da erro:

 

Parse error: parse error, unexpected T_STRING in c:\apache\htdocs\pmparaty\noticias\administracao\upload.php on line 28

 

 

a linha é essa:

 

mysql_query("INSERT INTO imagens VALUES ('', '$imagem')");

Compartilhar este post


Link para o post
Compartilhar em outros sites

as junções funcionam assim

 

Tabela usuarios

 

id nome

12 Fabyo

34 Erick

 

Tabela setores

 

id setor

 

25 Compras

17 Vendas

18 RH

 

dai você grava na tabela de junções

 

setores_usuarios

 

id_setor id_usuario

 

17 34

25 12

 

dai no select ele ira pegar e você vai ter esse resultado

 

Erick = Vendas

Fabyo = Compras

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim fabyo disso eu sei mais eu gostaria de saber como eu irie adicionar um usuario na tabela usuarios e ao mesmo tempo adicionar ele na tabla usar_setor sendo que eu estou criando o ID do usuario nesse exato momento...

 

lá eu tinha feita da seguinte maneira....

 

$nome = "erick";$setor = 25;"insert into user (id, nome) values ('','$nome')""select nome from user  where nome = '$nome'"//aqui eu pego o id desse user e ai registro no user_setor pegava

Isso é gambiarra da mais pura.... tem outro geito de inserir isso somente em uma query sinsert ???

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.