Willkommen auf dem Portal für Mediengestalter
|
|
|
| Autor |
Nachricht |
spooky
Dabei seit: 28.11.2002
Ort: Rheinhessen/Schwaben
Alter: 24
Geschlecht:
|
Verfasst Do 11.03.2004 13:20
Titel [PHP] E-Mail in DB |
 |
|
Hallo Leuts,
ich will mit unten anghängtem PHP-Script eine E-Mailadresse aus nem SWF übernehmen.
Score und Name werden in DB übernommen, aber die E-mail wir dnicht eingetragen. Was hab ich falsch gemacht?
| Code: |
<?
/*********************************************************************
connect to db
**********************************************************************/
$dbhost = localhost;
$dbuser = meineseite.de;
$dbpass = meineseite.de;
$dbname = meineseite.de;
$table = meineseite;
$dbcon = mysql_connect($dbhost,$dbuser,$dbpass);
if ($dbcon < 0) {echo error can't connect to db!\n; die();}
mysql_select_db($dbname,$dbcon);
/*********************************************************************/
// Daten speichern ------------------------------------
if ( $name != and $punkte != 0 and $keyid and $email != > 0) {
if ($punkte == ((($keyid/3)-11)/7)-13){
$sql = SELECT id,score FROM $table WHERE name = ' . $name . ' ORDER BY SCORE LIMIT 1;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
$ID = @mysql_result($result, 0,0);
$Score = @mysql_result($result, 0,1);
@mysql_free_result($result);
if ($ID AND $Score < $punkte) {
$sql = UPDATE $table SET score = ' . $punkte . ' WHERE id = ' . $ID . ' ;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
} else if (!$ID) {
$sql = INSERT IGNORE INTO $table SET name = ' . $name . ', score = ' . $punkte . ' ;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
} else if (!$ID) {
$sql = INSERT IGNORE INTO $table SET email = ' . $email . ', email = ' . $name . ' ;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
}
} else {
mail(webmaster@meineseite.de, $table, Key: $keyid, Punkte: $punkte);
}
}
// Daten auslesen -------------------------------------
$sql = SELECT * FROM $table ORDER BY score DESC LIMIT 15;
$erg = mysql_query($sql);
$i = 1;
if (mysql_num_rows($erg)>0){
while ($res = mysql_fetch_array($erg)){
echo name$i=$res[name];
echo score$i=$res[score];
$i++;
}
}
?> |
|
|
| |
|
 |
Sarky
Moderator
Dabei seit: 29.06.2002
Ort: Stuttgart
Alter: 26
Geschlecht:
|
Verfasst Do 11.03.2004 13:28
Titel
|
 |
|
Wirf mal einen genauern Blick auf diesen Teil Deines Codes
| Code: |
if ($ID AND $Score < $punkte)
{
$sql = UPDATE $table SET score = ' . $punkte . ' WHERE id = ' . $ID . ' ;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
}
else
if (!$ID)
{
$sql = INSERT IGNORE INTO $table SET name = ' . $name . ', score = ' . $punkte . ' ;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
}
else
if (!$ID)
{
$sql = INSERT IGNORE INTO $table SET email = ' . $email . ', email = ' . $name . ' ;
$result = mysql_query($sql,$dbcon) OR mail(webmaster@meineseite.de, $table, $sql\n.mysql_error());
}
|
Du fragst hier 2 Mal (!) nach den selben Bedingungen ab, daher landest Du logischerweise immer im ersten der beiden Else-Zweige da die Bedingung erfüllt ist. Dort wiederum trägst Du $email gar nicht in die Datenbank ein! Der zweite Else-Zweig wird nie erreicht.
Zudem hast Du noch einen Fehler im zweiten Teil, Du setzt zweimal hintereinander einen Wert für das Feld "email", zuerst den Inhalt von $email und dann sofort darauf den Wert von $name.
|
|
| |
|
 |
dastef
Moderator
Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Do 11.03.2004 14:15
Titel
|
 |
|
lass dir doch einfach mal $sql ausgeben und du siehst schon was er für werte
in die email übernimmt ...
zudem glaub ich das zweite !$ID wohl eher $Score heissen sollte
|
|
| |
|
 |
| |
|
 |
| Ähnliche Themen |
[php] mail
BCC mail mit php
[PHP] Probs mit mail()
E-Mail Validierung in PHP
mail formular mit php
[php] problem mit mail();
|
 |
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|