php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 14-07-2006, 16:03
Bassers
 Newbie
Links : Onlinestatus : Bassers ist offline
Registriert seit: Feb 2006
Beiträge: 2
Bassers ist zur Zeit noch ein unbeschriebenes Blatt
Unhappy [PHP5] PHP-Einstellungen falsch? jedenfalls: Probleme mit Variablen oder Session?

Hallo Leute,

ich habe folgendes Problem:

Für unseren Spamfilter gibt es ein kleines Webinterface, mit dem man seinen Spam untersuchen kann - auf PHP-Basis.

Eigentlich sollte das funktionieren, tut es aber nicht

Fehler werden keine ausgegeben, aber ich kann mich auch nicht einloggen,
wenn ich das entsprechende Formular die Logindaten eingebe und submit drücke,
bekomme ich nur wieder die gleiche Seite und das Formular ist wieder leer...

Ich vermute, das ganze ist entweder eine Einstellungssache von PHP,
oder aber eine Variable wird nicht richtig weitergegeben...
Vielleicht klappts auch mit der Session nicht...
ich habe keine Ahnung

Das ganze läuft auf nem aktuellen XAMPP, d.h. die neue XAMPP 1.5.3a Version ist erschienen mit ...

* Apache 2.2.2
* MySQL 5.0.21
* PHP 5.1.4
* phpMyAdmin 2.8.1
* XAMPP Control Panel Version 2.3
* FileZilla FTP Server 0.9.16c

register_globals ist off
session auto_start ist disabled

Wer sich das ganze Paket anschauen möchte: http://www.logsat.com/SpamFilter/pub...eb-9-21-05.zip
Die beiden Dateien die vermutlich den ganzen Ärger machen sind:

authenticate.php:
PHP-Code:
    session_start();
    require_once 'db_connect.php';

    if (! isset($_SESSION['EmailTo'])) {
        $EmailTo = $_POST['EmailAddress'];

        if (strlen($EmailTo) < 3 ) {
?>
<html>
<head>
    <title>Spam Filter - Login</title>
</head>
<body>
    <form method="post" name="Login">
    <table align="center" border="1" cellpadding="1" cellspacing="1">
        <tr><td align="center" colspan="2"><h2>Please Login</h2></td></tr>
        <tr>
            <td align="right">Email Address:</td>
            <td><input type="text" size="15" name="EmailAddress"></td>
        </tr>
        <tr>
            <td align="right">Password:</td>
            <td><input type="password" size="15" name="Password"></td>
        </tr>
        <tr>
            <td align="center" colspan="2">
                <input type="submit" value="Login">&nbsp;&nbsp;
                <input type="reset" value="Clear">
            </td>
<!--        <tr><td align="center" colspan="2"><a href="Register.php">Register</a></td></tr> -->
        </tr>
    </table>
    </form>
</body>
</html>
<?php
            
exit();
        } else {
            
// Generate query.
            
$SQL 'SELECT Password ';
            
$SQL .= 'FROM tblLogins ';
            
$SQL .= 'WHERE EMail = "' $EmailTo '"';
            
$query $db->query($SQL);
            if (
DB::iserror($query)) die($query->getMessage());
            
$row $query->fetchRow();
            if (
DB::iserror($row)) die($row->getMessage());
            
$failure false;
            if ((
$query->numRows() < 1) || (strlen($row[0]) < 1) || ($row[0] != $_POST['Password'])) $failure true;

            
// If password fails to match.
            
if ($failure) {
?>
<html>
<head>
    <title>Spam Filter - Failed Login</title>
</head>
<body>
    <h2 align="center">The password you entered was incorrect!</h2>
    <p align="center"><a href="ListSpam.php">Try Again</a></p>
</body>
</html>
<?php
                
exit();
            } else {
                
$_SESSION['EmailTo'] = $EmailTo;
            }
        }
    }
und listspam.php
PHP-Code:
<?php
    
require_once 'authenticate.php';
    
$Quit $_GET['Quit'];
    if (
$Quit 1) {
      
$_SESSION['EmailTo'] = '';
    }
    
$EmailTo $_SESSION['EmailTo'];

    
// Theoretically, this should never happen.
    
if (strlen($EmailTo) < 1) {
        unset(
$_SESSION['EmailTo']);
        
header("Location: ListSpam.php");
        exit();
    }
?>
<html>
<head>
    <title>Spam Filter - Suspected Spam List</title>
</head>
<body>
<?php
    
// Determine if a sort order was chosen.
    
$order_by $_GET['SortBy'];

    switch(
$order_by) {
        case 
'Subject':
            
$order_by 'Subject, MsgDate, EmailFrom';
            break;
        case 
'EmailFrom':
            
$order_by 'EmailFrom, MsgDate, Subject';
            break;
        default:
            
$order_by 'MsgDate, EmailFrom, Subject';
    }

    
// Generate query.
    
$SQL 'SELECT QuarID, EmailFrom, Subject, MsgDate, MsgID, RejectDesc ';
    
$SQL .= 'FROM tblQuarantine, tblRejectCodes ';
    
$SQL .= 'WHERE (EmailTo = "' $EmailTo '") ';
    
$SQL .= 'AND (Deliver = 0) ';
    
$SQL .= 'AND (Expire = 0) ';
    
$SQL .= 'AND (tblQuarantine.RejectID = tblRejectCodes.RejectID) ';
    
$SQL .= 'ORDER BY ' $order_by;
    
$query $db->query($SQL);
    if (
DB::iserror($query)) die($query->getMessage());
?>
    <h2 align="center">Spam List for <?php echo htmlspecialchars($EmailTo); ?></h2>
    <form action="ResolveSpam.php" method="post">
    <table border="1" cellpadding="2" cellspacing="0" width="100%">
    <thead align="center" valign="bottom">
        <tr>
            <th scope="col" bgcolor="silver">&nbsp;</th>
            <th scope="col" bgcolor="silver"><a href="ListSpam.php?SortBy=EmailFrom">From</a></th>
            <th scope="col" bgcolor="silver"><a href="ListSpam.php?SortBy=Subject">Subject</a></th>
            <th scope="col" bgcolor="silver"><a href="ListSpam.php?SortBy=MsgDate">Date</a></th>
            <th scope="col" bgcolor="silver">Rejection</th>
        </tr>
    </thead>
    <tbody>
<?php
    
if ($query->numRows() < 1) {
?>
        <tr><td align="center" colspan="5"><h2>No potential spam found!</h2></td></tr>
    </tbody>
    </table>
<?php
    
} else {

        while (
$row $query->fetchRow()) {
            if (
DB::iserror($row)) die($row->getMessage());
            
$QuarID $row[0];
            
$MsgID $row[4];
?>
        <tr>
            <td align="center"><input type="checkbox" name="<?php echo 'chk_' $QuarID?>"></td>
            <td>
                &nbsp;<a href="ResolveSpam.php?QuarID=<?php echo $QuarID?>&MsgID=<?php echo $MsgID?>">view</a>&nbsp;&nbsp;
                <?php echo htmlspecialchars($row[1]) ?>
            </td>
            <td><?php echo htmlspecialchars($row[2]) ?></td>
            <td><?php echo $row[3]?></td>
            <td><?php echo $row[5]?></td>
        </tr>
<?php
        
}
?>
    </tbody>
    </table>
    <input type="submit" name="cmdDelete" value="Delete">&nbsp;<input type="submit" name="cmdSend" value="Send">
    </form>
<?php
    
}
?>
    <p>Change your <a href="PasswordChange.php">password</a><br>
       Login with a <a href="ListSpam.php?Quit=1">different email</a>.</p>
</body>
</html>
Hat jemand ne Idee, warum's net klappt?

Gruß, Sebastian
Mit Zitat antworten
  #2 (permalink)  
Alt 14-07-2006, 16:37
RanzigeMilch
 Registrierter Benutzer
Links : Onlinestatus : RanzigeMilch ist offline
Registriert seit: May 2005
Ort: Darmstadt
Beiträge: 757
RanzigeMilch ist zur Zeit noch ein unbeschriebenes Blatt
RanzigeMilch eine Nachricht über ICQ schicken
Standard

wie soll das formular auch funktionieren wenn du keine aktion definiert hast??
__________________
Die Milch bleibt ranzig!
Mit Zitat antworten
  #3 (permalink)  
Alt 14-07-2006, 16:51
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Ohne Action gehen die Daten an PHP_SELF, ohne Method per GET. Man kann also <form>...</form> schreiben - Verständnis für solche Faulheiten habe ich persönlich aber nicht.
Mit Zitat antworten
  #4 (permalink)  
Alt 14-07-2006, 17:01
RanzigeMilch
 Registrierter Benutzer
Links : Onlinestatus : RanzigeMilch ist offline
Registriert seit: May 2005
Ort: Darmstadt
Beiträge: 757
RanzigeMilch ist zur Zeit noch ein unbeschriebenes Blatt
RanzigeMilch eine Nachricht über ICQ schicken
Standard

oh achso..
ich hab das PHP_SELF immer noch hingeschrieben,
naja wieder was gelernt.
in den docus liest man auch vom PFLICHTattribut "action"
__________________
Die Milch bleibt ranzig!
Mit Zitat antworten
  #5 (permalink)  
Alt 14-07-2006, 17:02
Bassers
 Newbie
Links : Onlinestatus : Bassers ist offline
Registriert seit: Feb 2006
Beiträge: 2
Bassers ist zur Zeit noch ein unbeschriebenes Blatt
Post

Ich bin doch nur ein Praktikant

Habe das ganze aufs Auge gedrückt bekommen und sollte denn Server samt MySQL aufsetzen, den Spamfilter installieren und dann das vom Hersteller zu beziehende Webinterface implementieren...
mit dem Kommentar: "Eigentlich sollte das alles ganz einfach sein..."

Bis zu diesem Punkt war's das auch...

Gruß, Sebastian
Mit Zitat antworten
  #6 (permalink)  
Alt 14-07-2006, 17:26
mäander_
 Junior Member
Links : Onlinestatus : mäander_ ist offline
Registriert seit: Jul 2006
Beiträge: 106
mäander_ ist zur Zeit noch ein unbeschriebenes Blatt
Standard

mich würde noch interessieren, warum Du nicht beim Hersteller logsat anfragen
kannst. Immerhin kostet die SW, das was Du unser Spamfilter genannt hast, USD 600 pro Jahr.
Es ehrt selbstverständlich php-resource.de sehr und freut dieses Forum, dass du dieses Forum schneller gefunden hast als jenes. Vielleicht hast
du dort schon angefragt, oder es gibt noch andere Gründe...

Geändert von mäander_ (14-07-2006 um 18:05 Uhr)
Mit Zitat antworten
  #7 (permalink)  
Alt 14-07-2006, 17:44
mäander_
 Junior Member
Links : Onlinestatus : mäander_ ist offline
Registriert seit: Jul 2006
Beiträge: 106
mäander_ ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von RanzigeMilch
wie soll das formular auch funktionieren wenn du keine aktion definiert hast??
Die Frage ist vollkommen umgedreht zu stellen. Es sollte heissen,
Zitat:
wie soll das formular auch funktionieren wenn der Verkäufer, die 'LogSat Software LLC' keine aktion definiert hast??
Es handelt sich beim geposteten Code um Teile des webinterface der 'LogSat Software LLC' , wie man äusserst leicht feststellen kann. Die fehlende action in authenticate.php ist dort fehlend, wörtlich.
Mit Zitat antworten
  #8 (permalink)  
Alt 14-07-2006, 18:30
prego
 PHP Senior
Links : Onlinestatus : prego ist offline
Registriert seit: May 2005
Ort: Herborn
Beiträge: 1.609
prego ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Welcher Browser?

Wenn IE, welche Datenschutzeinstellung zur Cookie Behandlung? Wenn es auf hoch steht kann es sein das wegen fehledner Datenschutzrichtlinie (p3p) kein Cookie angenommen wird.

Mal auf Mittel oder niedrig stellen und testen.
Mit Zitat antworten
  #9 (permalink)  
Alt 14-07-2006, 19:12
madmaurice
 Banned
Links : Onlinestatus : madmaurice ist offline
Registriert seit: Jul 2006
Beiträge: 37
madmaurice ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Es liegt nicht an dem browser habs mit ie firefox und opera schon probiert hab sogar per php skript auf xampp 1.5.3 anzeigen lassen und die wechselt sich bei jedem aktuelisieren.und wenn ich die Sessionid per PHPSESSID übergebe hab ich zwar die gleiche sessionid kann aber die daten trotzdem net anzeigen lassen und mit der probe mit isset kommt immer false raus


EDIT: Hab das gleiche problem session kaputt
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Projektmanagement Damals und Heute
Projektmanagement Damals und HeuteWerfen Sie einen Blick auf das, was sich verändert hat, und entdecken Sie, wo die Zukunft dieses Gebietes hinsteuert.

18.01.2021 | Berni

Arbeitsmanagement-Tools
Arbeitsmanagement-ToolsWarum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.

11.12.2020 | Berni


 

Aktuelle PHP Scripte

PHP Newsletter Script SuperWebMailer ansehen PHP Newsletter Script SuperWebMailer

Die webbasierte PHP Newsletter Software SuperWebMailer ist die optimale Lösung zur Durchführung eines erfolgreichen E-Mail-Marketings. Zur Nutzung des PHP Script-Pakets ist eine eigene Webpräsenz/Server mit PHP 5 oder neuer, MySQL 4 oder neuer und die

29.04.2021 mirko_swm | Kategorie: PHP/ Mail
OXID eShop

Mit OXID eshop bieten wir Ihnen eine modulare und skalierbare Internet Shopping Software mit einem hervorragenden Preis-/Leistungsverhältnis.

29.04.2021 eric.jankowfsky@ | Kategorie: PHP/ Shops
PHP-Login

Die Aufgabenstellung bestand darin, ein einfaches Login-Script zu erstellen, dass schnell und universell auf jeder Webseiten eingebaut werden kann. Der Schwerpunkt lag dabei auf der Entwicklung eines universell einsetzbarem Modul für den Login und zur

05.04.2021 Wallhalla | Kategorie: PHP/ Kundenverwaltung
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:19 Uhr.