redirection > download.php?id=1

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : redirection > download.php?id=1

par Alain » 06 mai 2005, 17:21

ya pas de probleme au niveau des guillemet, j'ai bien vérifié que qu'il y avait a chaque fois un "ouvert" pour un "fermer" .

sympa ton proverbe indien Albat


ce systeme de download, je sais pas vous mais je l 'ai vu sur pas mal de sites quand meme ( par contre quand il faut les citer ça me reviens pas )
donc c 'est fesable, c 'est sur, mais je vois pas d'où viens la couille


:? j'ai posté dans " php debutant " parce que je suis débutant
mais estce qu'il faudrait déplacer le sujet dans " php " tout court car c 'est un truc assez aboutis quand meme ?

par albat » 06 mai 2005, 08:43

Une première vérification - très simple - à faire, c'est de compter ses guillemets (ou apostrophes).
Si le nombre est impair, y a forcément un schmurtz. :idea:

par fab » 06 mai 2005, 01:30

je crois que je sais d'où ça vient, j'ai oublié un truc :
header("Location: ".$redire."") ;
J'avais ouvert les guillemets, mais oublié de les fermer.
non non, normalement tu n'as pas besoin de faire un guillement vide a la fin.
donc le code suivant est tout a fait correct :
header("Location: " .$redire);

par Cyrano » 05 mai 2005, 23:58

Il est temps que j'aille me coucher, j'avais pas trop regardé le reste du code: tu as envoyé des variables php telles quelles dans du html, ça ne pouvait pas marcher:
<html>
<head>
   <title>tapage d liens</title>
</head>
<body>
<?
mysql_connect("sql.free.fr", "monlogin", "password");
mysql_select_db("suresnestk");
$retor = mysql_query("SELECT id FROM liens id='1'");
while($don = mysql_fetch_array($retor))
{
?>
<a href="download.php?id=<?php echo($don['id']); ?>">lien 1</a>
<?
}
$retour = mysql_query("SELECT id FROM liens WHERE id='2'");
while ($dona = mysql_fetch_array($retour))
{
?>
<a href="download.php?id=<?php echo($don['id']); ?>">lien 2</a>
</body>
<?
}
?>
</html>

par Alain » 05 mai 2005, 23:51

non, ça a pas l 'air d'etre ça, j 'ai que des pages blanches, sauf pour page1.php qui me renvoie
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/1/3/suresnestk/page1.php on line 14

par Cyrano » 05 mai 2005, 23:39

je crois que je sais d'où ça vient, j'ai oublié un truc :
header("Location: ".$redire."") ;
J'avais ouvert les guillemets, mais oublié de les fermer.

par Invité » 05 mai 2005, 23:29

merci Cyrano

j'ai donc changé le fameux " header('$redire'); "
pour " header("Location: ".$redire); "

mais les choses semblent ne pas avoir changées.

j'ai pas les competences mais ça ne viendrais pas d'une fonction interdite par Free ?



( code du 1er post édité pour coller au present )

par Cyrano » 05 mai 2005, 21:39

<?
$redi = $_GET['id'];
mysql_connect("sql.free.fr", "monlogin", "password");
mysql_select_db("suresnestk");
$retor = mysql_query("SELECT url FROM liens WHERE id='$redi'");
while ($dona = mysql_fetch_array($retor))
{
$redire = $don['url'];
header("Location: ".$redire);
exit;
}
?>
regarde la modif à la ligne header...

redirection > download.php?id=1

par Alain » 05 mai 2005, 21:32

bonjour a touts et a toutes, je débute un peu en php, on m'aide, j'etudie un peu, ect...

ce que je cherches a faire ce serais un fichier download.php qui ne ferais QUE de la redirection

imaginons que je tappe racine/download.php?id=1
le fichier php irais chercher dans la bdd le fichier correspondant a id=1
et me redirigerais donc vers un mp3 situé dans un compte multimania ou free quelquonque situé a l 'autre bout du web


alors j 'ai demandé a un ami :
voila ce que j 'ai fait avec lui :


------------------
download.php
------------------

Code : Tout sélectionner

<? $redi = $_GET['id']; mysql_connect("sql.free.fr", "monlogin", "password"); mysql_select_db("suresnestk"); $retor = mysql_query("SELECT url FROM liens WHERE id='$redi'"); while ($dona = mysql_fetch_array($retor)) { $redire = $don['url']; header("Location: ".$redire.""); exit; } ?>


---------------------------
page1.php
---------------------------

Code : Tout sélectionner

<html> <head> <title>tapage d liens</title> </head> <body> <? mysql_connect("sql.free.fr", "monlogin", "password"); mysql_select_db("suresnestk"); $retor = mysql_query("SELECT id FROM liens id='1'"); while($don = mysql_fetch_array($retor)) { ?> <a href="download.php?id='".$don['id']."'">lien 1</a> <?} $retour = mysql_query("SELECT id FROM liens WHERE id='2'"); while ($dona = mysql_fetch_array($retour)) { ?> <a href="download.php?id='".$don['id']."'">lien 2</a> </body> <?} ?> </html>
----------------------------------------


pour ce qui est de la bdd :

-----------------------------------------

Code : Tout sélectionner

-- -- Structure de la table `liens` -- CREATE TABLE `liens` ( `id` int(11) NOT NULL auto_increment, `url` varchar(255) NOT NULL default '', KEY `id` (`id`) ) TYPE=MyISAM AUTO_INCREMENT=2 ; -- -- Contenu de la table `liens` -- INSERT INTO `liens` VALUES (1, 'http://www.the-song-family.com/song_family-mp3_gratuit.mp3');

si vous savez voyez ce qui cloche ça m'aiderais bien bien, et si vous avez une solution de rechange, un code deja tout ecris pour arriver a rediriger je suis preneur

a plus ++