$id = $_GET['id'] : variable ne fonctionne pas

Je suis en train de les envoyer par e-mail
1) à l'Aide de $_GET['id'] pour définir la ligne mysql
2) Extraire les informations pertinentes à partir de la base de données, y compris l'adresse e-mail et
3) Envoyer un e-mail à l'extrait adresse e-mail.

Aucune erreur n'est signalée avec le rapport d'erreurs (à noter que collé le code a commenté), mais les variables ci-dessous ($street2 et $email) ne semblent pas être retenus par l'intermédiaire du fichier à inclure. L'écho de tous les beaux travaux lorsqu'ils ne sont pas commentés. Lorsque je remplace le $email variable (sur le fichier à inclure, non montré) avec une vraie adresse e-mail, tout ce qui envoie bien.

Je pense que la principale chose à noter est dans la Ligne 9, si je définir le $id, puis tout fonctionne bien. Cependant, si j'essaie d'utiliser $_GET pour définir le $id variable, puis l'écho des variables encore fine (sens des requêtes db sont couronnées de succès), mais le fichier include ne fonctionne pas.

Voici mon code. Il est placé au-dessus du formulaire HTML. J'ai ajouté quelques commentaires dans le code afin que vous puissiez avoir une meilleure idée de ce qui a fonctionné ou pas.

<?php
session_start() or die("Could not start session.");

//error_reporting(E_ALL);
//ini_set('display_errors', '1');
$id = 0;
if(isset($_GET['id']) && is_numeric($_GET['id']))
    $id = (int)$_GET['id'];
//$id=4;
//if Line 9 is not commented out, then the whole script works fine and email is sent
require('connect.php');

$query1 = mysql_query("SELECT street2 FROM prop_one WHERE sellerID='$id'") or die("OOPS: Bad    query1");
$row1 = mysql_fetch_assoc($query1, MYSQL_NUM);
$street2 = $row1[0];
//echo "This is $street2";

$query2=mysql_query("SELECT email FROM account WHERE sellerID='$id'") or die("OOPS: Bad query2");
$row2 = mysql_fetch_assoc($query2, MYSQL_NUM);
$email = $row2[0];
//echo "<br>This is $email";

if (isset($_POST['submit']))
{
include_once("emailSeller_inc.php");
}
?>

Ici est de la forme:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" name="emailToSeller">
<fieldset>
<legend>Your Contact Info
</legend>
<label for="conFName">First name*</label>
<input name="conFName" type="text" id="conFName" value="<?php echo stripslashes(htmlentities($conFName)) ?>" placeholder="required" required = "required" size="35" maxlength="50"/>
<label for="conLName">Last name</label>
<input name="conLName" type="text" id="conLName" value="<?php echo stripslashes(htmlentities($conLName)) ?>" size="35" maxlength="50"/>
<label for="conEmail">Email*</label>
<input name="conEmail" type="email" id="conEmail" value="<?php echo stripslashes(htmlentities($conEmail)) ?>" placeholder="required" required="required" size="35" maxlength="50"/>
<label for="conTel">Phone</label>
<input name="conTel" type="text" id="conTel" value="<?php echo stripslashes(htmlentities($conTel)) ?>" placeholder="" size="25" maxlength="15"/>&nbsp;e.g., 555.555.5555
</fieldset>
<fieldset style="text-align: center; position: absolute; top: -200; z-index: -1000;">
<input class="teaser" type="submit" name="submit" id="submit" value="Submit"/>
</fieldset>
<fieldset>
<legend>Your Message
</legend>
<label for="conSubject">Subject*</label>
<input name="conSubject" type="text" id="conSubject" value="<?php echo stripslashes(htmlentities($conSubject)) ?>" placeholder="required" required="required" size="35" maxlength="50"/>
<label for="conMessage">Message*</label>
<textarea name="conMessage" type="textarea" id="conMessage" placeholder="required" required="required" cols="50" rows="8" maxlength="400"/><?php echo stripslashes(htmlentities($conMessage)) ?></textarea>
<label class="teaser">Email</label>
<input class="teaser" name="validate" id="validate" type="text" autocomplete="off" />
</fieldset>
<fieldset style="text-align: center">
<input class="button" type="submit" name="submit" id="submit" value="Send email"/>
</fieldset>
</form>
</div>
  • Ce qui se passe pour echo $_GET['id'] ?
  • essayez is_int au lieu de is_numeric sinon qqch comme "4e12a" serait valable, trop
  • où est connect.php? est dans le bon chemin? Peut-être vous pouvez activer l'affichage des erreurs php.ini (ou vérifier les journaux) pour voir l'erreur donnée par php
  • scalopus: Si je reprends le $id, $ou $ _GET['id'], il résonne comme il se doit. En d'autres termes, lorsque l'URL est dit ?id=4, les échos montrez-moi 4. Merci!
  • faire un print_r($_REQUEST); et coller le résultat dans la question.
InformationsquelleAutor Maggie | 2012-04-19