andi: ich kann eine mailadresse nicht ais db lesen!


hi @ all!

ich hab folgendes problem:

ich hab einen code, der funzt normalerweise auch und sendet - beim jeweiligen subscribe eine mail an mich, der code schaut so aus:
Code:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:

<?
$name = $_POST['name'];
$ort = $_POST['ort'];
$mail = $_POST['mail'];
$url = $_POST['url'];
$user = $_POST['user'];
$pass = $_POST['pass'];
if ($submit="Subscribe")
{
   $query = "insert into data1"
      ." (name,ort,mail,url,user, pass) values "
      ."('$name', '$ort', '$mail', '$url', '$user', '$pass')"
   ;
   mysql_query($query);
?><b>
Der Sub-Admin Ihrer  Homepage wurde erfasst!</b></font><br>
<?
}
else
{
include("sign.php");
}
$admin ="mail@mail.at";
$subject = "Neu! Subscribe Webmastersworld: $name";
$message = "Nachricht fuer $admin von $email:\n\n";
while(list($name,$value)=each($HTTP_POST_VARS)) {
$message.="$name: $value\n\n";
}
mail($admin,$subject,"Subscribedaten: $email\n\n $ort\n\n $mail\n\n $url\n\n user: $user, pass: $pass,");
?>

wie man sieht wurde im $admin eine konstante mailaddi eingebaut, das klappt auch, kaum setze ich die mailaddi in eine tabelle (mysql) kann ich tun was ich will, die addi wird nicht ausgelesen und dort bei $admin eingesetzt, BITTE kann mir da jemand helfen;

achja: die tabelle heisst mail, die textzeile mail1. das klappt auch, wenn ich eine query.php mache und die addi in einem echo auslese, da sehe ich die addi, sie wird aber nicht in den Bereich $admin="" eingetragen, bitte wie geht ein solcher code???

  1. hi,

    das klappt auch, wenn ich eine query.php mache und die addi in einem echo auslese, da sehe ich die addi, sie wird aber nicht in den Bereich $admin="" eingetragen, bitte wie geht ein solcher code???

    ist die frage ernst gemeint ...?

    wenn du

    ... // code zum auslesen aus der DB
    ... // code zum auslesen aus der DB
    ... // code zum auslesen aus der DB
    echo funktionxy(...)

    hinkriegst, dann wirst du doch wohl auch

    $admin = funktionxy(...)

    hinkriegen ...?

    gruss,
    wahsaga

    1. hi,

      das klappt auch, wenn ich eine query.php mache und die addi in einem echo auslese, da sehe ich die addi, sie wird aber nicht in den Bereich $admin="" eingetragen, bitte wie geht ein solcher code???

      ist die frage ernst gemeint ...?

      wenn du

      ... // code zum auslesen aus der DB
      ... // code zum auslesen aus der DB
      ... // code zum auslesen aus der DB
      echo funktionxy(...)

      hinkriegst, dann wirst du doch wohl auch

      $admin = funktionxy(...)

      hinkriegen ...?

      gruss,
      wahsaga

      leider ist das mein ernst, natürlich kann ich eine SELECT schreiben, aber die klappt net!?

      also ich hab folgendes auspribiert:

      $admin="select mail1 from mail where id>= 1"

      ====>> nix, ich bekam keine mail???!!

      da hab ich gschaut als ich wieder eine stabile mailaddi (smpt-test) einbaute ... und es ging $admin="mail@mail.at"  ===> ich bekam eine mail, also fragte ich mich, wie das sein kann??

      kaum las ich die daten in einer eigenen datei aus, schon konnte ich die adresse sehen, der query.php - code sah so aus:

      <?require "connect.php";
      $check = "SELECT mail1 FROM mail Where1";
      $result = mysql_query($check);
        if (mysql_num_rows($result))
        {
          while($row=mysql_fetch_array($result))
          {
      $name = $row['mail1'];

      }
      }
      echo(nl2br($name));
      ?>
      <?
      mysql_close($con);
      ?>

      ... schon war die mailaddi lesbar; aber in die verfluchte $admin="" kann ich sie nicht einlesen, ich gebe zu, ich hab lang überlegt, überhaupt zu posten.

      1. hi,

        $admin="select mail1 from mail where id>= 1"
        ====>> nix, ich bekam keine mail???!!

        in $admin steht jetz der _text_ "select mail1 from mail where id>= 1" - ist das etwa eine gültige email-adresse?

        da hab ich gschaut als ich wieder eine stabile mailaddi (smpt-test) einbaute ... und es ging $admin="mail@mail.at"  ===> ich bekam eine mail, also fragte ich mich, wie das sein kann??

        siehe oben, "mail@mail.at" ist eine korrekte emailadresse, "select mail1 from mail where id>= 1" aber nicht.

        kaum las ich die daten in einer eigenen datei aus, schon konnte ich die adresse sehen, der query.php - code sah so aus:

        fällt dir da ein unterschied zu deinem obigen code auf? sind da vielleicht ein paar zusätzliche zeilen code involviert?

        <?require "connect.php";
        $check = "SELECT mail1 FROM mail Where1";

        jetzt steht in $check also "SELECT mail1 FROM mail Where1" - aber hier machst du nicht die gleiche "dummheit" wie oben, dort direkt eine mail hinschicken zu wollen ...

        $result = mysql_query($check);

        aha, hier schickst du diese query erstmal an die datenbank - fehlt das vielleicht oben beim $admin komplett?

        if (mysql_num_rows($result))
          {
            while($row=mysql_fetch_array($result))
            {
        $name = $row['mail1'];

        und hier wertest du dann das abfrage-ergebnis ordentlich aus - fehlt das oben vielleicht auch komplett?

        ... schon war die mailaddi lesbar; aber in die verfluchte $admin="" kann ich sie nicht einlesen, ich gebe zu, ich hab lang überlegt, überhaupt zu posten.

        ich hoffe, mit meinen erklärungen siehst du jetzt etwas klarer, warum es mit dem $admin so einfach nicht geklappt hat, weil da doch noch ein paar wesentliche teile für eine datenbankabfrage gefehlt haben.

        gruss,
        wahsaga

        1. hi,

          $admin="select mail1 from mail where id>= 1"
          ====>> nix, ich bekam keine mail???!!

          in $admin steht jetz der _text_ "select mail1 from mail where id>= 1" - ist das etwa eine gültige email-adresse?

          da hab ich gschaut als ich wieder eine stabile mailaddi (smpt-test) einbaute ... und es ging $admin="mail@mail.at"  ===> ich bekam eine mail, also fragte ich mich, wie das sein kann??

          siehe oben, "mail@mail.at" ist eine korrekte emailadresse, "select mail1 from mail where id>= 1" aber nicht.

          kaum las ich die daten in einer eigenen datei aus, schon konnte ich die adresse sehen, der query.php - code sah so aus:

          fällt dir da ein unterschied zu deinem obigen code auf? sind da vielleicht ein paar zusätzliche zeilen code involviert?

          <?require "connect.php";
          $check = "SELECT mail1 FROM mail Where1";

          jetzt steht in $check also "SELECT mail1 FROM mail Where1" - aber hier machst du nicht die gleiche "dummheit" wie oben, dort direkt eine mail hinschicken zu wollen ...

          $result = mysql_query($check);

          aha, hier schickst du diese query erstmal an die datenbank - fehlt das vielleicht oben beim $admin komplett?

          if (mysql_num_rows($result))
            {
              while($row=mysql_fetch_array($result))
              {
          $name = $row['mail1'];

          und hier wertest du dann das abfrage-ergebnis ordentlich aus - fehlt das oben vielleicht auch komplett?

          ... schon war die mailaddi lesbar; aber in die verfluchte $admin="" kann ich sie nicht einlesen, ich gebe zu, ich hab lang überlegt, überhaupt zu posten.

          ich hoffe, mit meinen erklärungen siehst du jetzt etwas klarer, warum es mit dem $admin so einfach nicht geklappt hat, weil da doch noch ein paar wesentliche teile für eine datenbankabfrage gefehlt haben.

          gruss,
          wahsaga

          ... deine erklärungen haben meine vermutungen bestätigt, als trug ich den code der query.php in $admin="query.php-code" ein, schon waren die verschiedensten parse-errrors da???! >> je nachden, was ich versuchte (ob mit escape \ oder andere sachen) >> parseerrors oder die mail kam nicht an. ???!!! bitte hilfe

          1. hi,

            ... deine erklärungen haben meine vermutungen bestätigt, als trug ich den code der query.php in $admin="query.php-code" ein, schon waren die verschiedensten parse-errrors da???!

            dann versuche deren ursachen zu finden.
            und lerne zu verstehen, was du da tust, anstatt einfach nur ohne verständnis code-teile hin- und herzukopieren.

            bitte hilfe

            hast du jetzt m.E. schon genug bekommen.
            dir scheint das grundsätzliche verständnis dafür zu fehlen, wie man in php mit einer mysql-DB kommuniziert.

            also beschäftige dich erstmal mit den grundlagen davon. ein tutorial wie z.b. http://schattenbaum.net/php/mstart.php ist dazu ein guter anfang.

            gruss,
            wahsaga

            1. hi,

              ... deine erklärungen haben meine vermutungen bestätigt, als trug ich den code der query.php in $admin="query.php-code" ein, schon waren die verschiedensten parse-errrors da???!

              dann versuche deren ursachen zu finden.
              und lerne zu verstehen, was du da tust, anstatt einfach nur ohne verständnis code-teile hin- und herzukopieren.

              bitte hilfe

              hast du jetzt m.E. schon genug bekommen.
              dir scheint das grundsätzliche verständnis dafür zu fehlen, wie man in php mit einer mysql-DB kommuniziert.

              also beschäftige dich erstmal mit den grundlagen davon. ein tutorial wie z.b. http://schattenbaum.net/php/mstart.php ist dazu ein guter anfang.

              gruss,
              wahsaga

              DANKE hat sich erledigt, die antwort lag im script selbst, ich wusste nur nicht, wie ich eine variable in $admin="..." eintragen soll.

              als das klar war, funzte alles

  2. Hello,

    Bahnhof!

    <?

    Wenn schon rüberstapeln, dann nicht nutzlos!

    $name = mysql_escape_string(stripslashes($_POST['name']));
    $ort = mysql_escape_string(stripslashes($_POST['ort']));
    $mail = mysql_escape_string(stripslashes($_POST['mail']));
    $url = mysql_escape_string(stripslashes($_POST['url']));
    $user = mysql_escape_string(stripslashes($_POST['user']));
    $pass = mysql_escape_string(stripslashes($_POST['pass']));

    if (isset($_POST[$submit]) and ($_POST[$submit]=="Subscribe"))
    #                                             ----
    {
      $query = "insert into data1"
           ." (name, ort, mail, url, user, pass) values "
           ."('$name', '$ort', '$mail', '$url', '$user', '$pass')";

    $con = mysql_connect( .... ) or die("Serverfehler");
      $db  = Mysql_connect_db(....) ...;

    mysql_query($query, $con);

    ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
             "http://www.w3.org/TR/html4/transitional.dtd">

    <html>
    ....

    <b>

    Der Sub-Admin Ihrer  Homepage wurde erfasst!</b></font><br>
    <?
    }
    else
    {
    include("sign.php");
    }
    $admin ="mail@mail.at";
    $subject = "Neu! Subscribe Webmastersworld: $name";
    $message = "Nachricht fuer $admin von $email:\n\n";

    /*
    while(list($name,$value)=each($HTTP_POST_VARS))
    {
      $message.="$name: $value\n\n";
    }
    */

    $message = "";
    if (isset($_POST))
    foreach($_POST as $name => $value)
    {
      $message.="$name: $value\n";
    }

    mail($admin,$subject,"Subscribedaten: $email\n\n $ort\n\n $mail\n\n $url\n\n user: $user, pass: $pass,");
    ?>

    Na, und so weiter...

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    1. Hello,

      if (isset($_POST['submit']) and ($_POST['submit']=="Subscribe"))
      {

      }

      so war's gemeint

      Liebe Grüße aus http://www.braunschweig.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen