joaocasta Posted June 28, 2012 at 09:36 AM Report Share #466097 Posted June 28, 2012 at 09:36 AM (edited) Bom dia, surgiu-me aqui uma dúvida, já consegui fazer o meu upload, mas não consigo mostrar quem o fez.. podem ajudar-me? aqui fica o código: <?php require_once 'template.php'; require_once 'config.php'; if(!empty($_POST['nomeimdb']) && !empty($_POST['nomept']) && !empty($_POST['linkimdb']) && !empty($_POST['ano']) && !empty($_POST['release']) && !empty($_POST['linktorrent'])) { $capa = mysql_real_escape_string($_POST['capa']); $nomeimdb = mysql_real_escape_string($_POST['nomeimdb']); $nomept = mysql_real_escape_string($_POST['nomept']); $linkimdb = mysql_real_escape_string($_POST['linkimdb']); $ano = mysql_real_escape_string($_POST['ano']); $release = mysql_real_escape_string($_POST['release']); $linktorrent = mysql_real_escape_string($_POST['linktorrent']); $checkupload = mysql_query("SELECT * FROM downloads WHERE nomeimdb = '".$nomeimdb."'") or die(mysql_error()); if(mysql_num_rows($checkupload) == 1) { echo "<h1>Erro</h1>"; echo "<p>Desculpa, mas esse filme ja foi inserido. Tenta outra vez.</p>"; } else { $registerquery = mysql_query("INSERT INTO downloads (`capa`, `nomeimdb`, `nomept`, `linkimdb`, `ano`, `release`, `linktorrent`) VALUES('".$capa."', '".$nomeimdb."', '".$nomept."', '".$linkimdb."', '".$ano."', '".$release."', '".$linktorrent."')") or die(mysql_error()); if($registerquery) { echo "<h1>Enviado!</h1>"; echo "<a href='index.php'>Click Here!</a>"; } else { echo "<h1>Erro</h1>"; echo "<p>Desculpa, o upload falhou. Tenta outra vez.</p>"; } } } else { ?> <html> <div id="add" align="center"> <form action="#" method="post"> <table width="30%" align="center"> <tr> <td> Nome Imdb: </td> <td> <input name="nomeimdb" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td> Nome PT: </td> <td> <input name="nomept" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td> Capa: </td> <td> <input name="capa" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td> Link Imdb: </td> <td> <input name="linkimdb" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td> Ano: </td> <td> <input name="ano" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td> Release: </td> <td> <input name="release" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td> Link Torrent: </td> <td> <input name="linktorrent" type="text" class="input" size="25" maxlength="200" /> </td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" name="submit" value="Enviar" /></td> </tr> </table> </form> </html> <?php } ?> Edited June 28, 2012 at 09:39 AM by yoda Link to comment Share on other sites More sharing options...
yoda Posted June 28, 2012 at 09:40 AM Report Share #466099 Posted June 28, 2012 at 09:40 AM Como assim, quem o fez? O autor do upload? Se sim, tens de dar mais informação. before you post, what have you tried? - http://filipematias.info sense, purpose, direction Link to comment Share on other sites More sharing options...
ruimcosta Posted June 28, 2012 at 10:10 AM Report Share #466105 Posted June 28, 2012 at 10:10 AM Se quem faz upload do vídeo é um utilizador registado no teu site, deves ter alguma informação nas sessões ($_SESSION['']). Abraços e beijinhos,Rui Costa Link to comment Share on other sites More sharing options...
joaocasta Posted June 28, 2012 at 10:14 AM Author Report Share #466108 Posted June 28, 2012 at 10:14 AM (edited) Sim yoda, o autor do upload, mas ruimcosta, tenho de chamar a sessão para isso? Podem ajudar-me? tem chamar com a sessao mas nao deu... Edited June 28, 2012 at 11:55 AM by joaocasta Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted June 28, 2012 at 03:33 PM Report Share #466212 Posted June 28, 2012 at 03:33 PM o que te estão a tentar dizer é que para registar a ação do utilizador (upload de imagem) necessitas de algum tipo de autenticação. a sessão serve para o controlo de autenticação IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
joaocasta Posted June 28, 2012 at 04:14 PM Author Report Share #466229 Posted June 28, 2012 at 04:14 PM Olá! Eu quando fiz o upload estava com o login, mas tenho de chamar o SESSION? Link to comment Share on other sites More sharing options...
yoda Posted June 28, 2012 at 05:14 PM Report Share #466240 Posted June 28, 2012 at 05:14 PM Tens de chamar a sessão em todas as páginas onde é necessário haver controlo de acessos, caso contrário não te vale de nada teres login. A partir daí, basta ver o ID do utilizador pela sessão. before you post, what have you tried? - http://filipematias.info sense, purpose, direction Link to comment Share on other sites More sharing options...
Volans Posted June 28, 2012 at 06:27 PM Report Share #466264 Posted June 28, 2012 at 06:27 PM (edited) Adicionas um campo numa tabela ou assim que contenha a informação dos uploads chamado "UploaderID" (com uma foreign key para o UserID se me entendes) e depois quando quiseres saber quem fez o upload basta fazer: <?php $sql = mysql_query("SELECT * FROM users WHERE UserID='$UploaderID'"); $result = mysql_fetch_array($sql); echo "Quem fez o upload foi: " . $result['name']; ?> Este trecho de código tá um pouco rascunhado, tens que adaptar isso... Mas penso que seja isso o que precisas. Cumpz Edited June 28, 2012 at 06:27 PM by Volans Link to comment Share on other sites More sharing options...
joaocasta Posted June 28, 2012 at 06:34 PM Author Report Share #466266 Posted June 28, 2012 at 06:34 PM é o mesmo que isto? $sql = mysql_query( "SELECT * FROM users WHERE id='".$_SESSION['id']."'" ); $result = mysql_fetch_array($sql); echo "Quem fez o upload foi: " . $result['username']; Mas é assim essa variável $UploaderID vem de onde? onde a coloco? Link to comment Share on other sites More sharing options...
Volans Posted June 29, 2012 at 01:16 AM Report Share #466322 Posted June 29, 2012 at 01:16 AM É assim, isso que tu tens ai vai fazer o seguinte: $sql = mysql_query("SELECT * FROM users WHERE id='" . $_SESSION['id'] . "'"); // Isto vai selecionar todos os dados da tabela users cujo id do utilizador seja o id de quem iniciou sessão. $result = mysql_fetch_array($sql); echo "Quem fez o upload foi: " . $result['username']; // Logo este echo vai dizer que quem fez o upload foi quem está com sessão iniciada. Ou seja, se o Chico fez o upload mas o Zé está a ver isto então vai aparecer que quem fez o upload foi o Zé e não o Chico. Eu estou a supor que tu tens uma tabela que guarda as informações dos uploads (nome do video, url, essas coisas). Nessa tabela vais ter que adicionar um campo que guarde o ID do utilizador que tiver feito o upload do video, o nome desse campo pode ser, por exemplo, UploaderID. Depois, sempre que fosses registar um novo upload tinhas que registar para além das outras informações o ID de quem fez o upload: // O ID de quem vai fazer o upload é o id de quem tem sessão iniciada, logo: $uploaderID = $_SESSION['id']; // Depois é só meteres isso na base de dados: $sql("INSERT INTO uploads (..., UploaderID) VALUES (..., '$uploaderID')"); Para apresentares depois, corretamente, o utilizador que tinha feito o upload bastava: // Selecionar os dados do upload que tu queres saber: $sql("SELECT * FROM uploads WHERE ID_DO_UPLOAD=X_ID"); $result = mysql_fetch_array($sql); // Depois querias saber quem tinha feito o upload, fazias: $UploaderID = $result['id']; // Que ia fazer com que a variável $UploaderID ficasse com o id de quem tinha feito o upload $sql = mysql_query("SELECT * FROM users WHERE id='$UploaderID'"); // Aqui ias selecionar todos os dados referentes a quem fez o upload $result = mysql_fetch_array($sql); // Meter os dados numa array... echo "Quem fez o upload foi: " . $result['utilizador']; Espero que tenha sido mais explicito desta vez. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now