Beiträge von strong97

    Hey Com,


    meine Frage diesmal, wenn ich z.B:
    $_POST['user'],$_POST['password'] etc habe, wäre es sinnvoll dies in einem Array zu speichern wenn ja, in welcher Form?


    Reicht dies aus?



    Oder wie würdet ihr es mir empfehlen? Möchte es sicher haben

    Guten Tag,


    habe mal ne Frage unzwar kann man von einem Bild die Größe verändern ohne Height?


    Ich möchte grad eine Box Responsive machen, hat geklappt nur das Bild ist einfach zu groß. Hier mal ein Überblick wie es ist:


    So ist es in (<= 480px)


    [Blockierte Grafik: http://img5.fotos-hochladen.net/uploads/mypzdjctpu4g3.png]


    Ich würde es gerne so haben das, dass Bild noch kleinerer wird.


    Mein Code ist grad so:

    Sorry für das 'nochmalige' reinschreiben aber habe jetzt das gleiche Problem und sitze locker seit einer Stunde dran doch finde nix. Es hat geklappt mt den Login , habe eine andere DB genommen aufeinmal klappt es nicht mehr. Ich habe die Tabellen etc kontrolliert , habe sogar ein test gemacht mit PDO::FETCH_ASSOC ob die Einträge gefunden werden + var_dump($_POST['email'] etc alles klappt er findet alles doch er zeigt mir falsche Daten an, obwohl es vorher ging. Bin grad total verwirrt...



    DB_TABELLE:
    (id)
    (email)
    (password)


    class.user.php



    dbconfig.php

    PHP
    <?php
    session_start();
    include 'sec/verbindung.inc.php';
    include  'class.user.php';
    $user = new USER($DB_con);
    ?>


    login.php


    PS: Die Account-Daten habe ich ungehasht gemacht. d.h


    example: mail = testmail@live.de , pw: hallo123456 (Kein Hash/Keine htmlspecialchars etc)

    Danke hat geklappt :)


    Kurze Frage am Rande:


    Wieso funktoniert , strtoupper($_SERVER['REQUEST_METHOD'] == 'POST') nicht? wenn ich es klein schreibe werde ich immer noch weitergeitet.


    @cotton , habe es ohne echo $_SERVER['REQUEST_METHOD'] gemacht , da der mir sonst GET anzeigt.

    Guten Tag,


    ich habe ein kleines Problem, un zwar wenn man auf ein Button klickt, dann werden die Preise angezeigt.


    Die Preise stehen in einem Array und die Werte werden mit einer foreach Schleife vergeben und in eine Tabelle angezeigt. Wenn ich den HTML-Code in PHP schreibe dann funktonierts.


    Wenn ich es trenne erscheinen keine EInträge in der Tabelle. Hab nachgeschaut aber nichts gefunden. Hier der Code.


    HTML-Code in PHP
    [PHP]
    <?php


    if(isset($_POST['send_prcie']) && (strtolower($_POST['send_price']))) {

    if(strtoupper($_SERVER['REQUEST_METHOD'] == 'POST')) {

    $package_small = array(
    'small_one'=>10.00,
    'small_two'=>25.00,
    'small_three'=>50.00
    );


    echo '<table border="1">';
    echo '<tr><td> Name </td> <td>Preis</td></tr>';
    foreach($package_small as $key=>$value) {
    echo '<tr>';
    echo '<td>' . $key . '</td>';
    echo '<td>' . $value . '</td>';
    echo '</tr>';

    }

    }

    }

    ?>
    [/PHP]



    HTML-Code getrennt mit PHP (funktoniert nicht)
    [PHP]
    <?php



    if(isset($_POST['send_price']) && (strtolower($_POST['send_price']))) {

    if(strtoupper($_SERVER['REQUEST_METHOD']) == 'POST') {

    $package_small = array(
    'small_one'=>10.00,
    'small_two'=>25.00,
    'small_three'=>50.00
    );

    ?>
    <table border="1">
    <tr><td> Packet </td> <td>Preis in &euro;</td></tr>
    <?php foreach($package_small as $key=>$value) { ?>
    <tr>
    <td> <?php $key ?> </td>
    <td> <?php $value ?> </td>
    </tr>
    <?php
    }

    }
    }
    ?>
    <form action="<?php $_SERVER['REQUEST_METHOD']?>" method="POST">
    <input type="submit" name="send_price">
    [/PHP]

    wolf , danke habs nur nicht richtig ausgedrückt. Ich habe hier mal eine und dies auf Xampp getestet. Es wirkt jedoch nicht. Sinn: Falsche eingabe = immer index.php:



    htaccess:


    RewriteEngine On
    RewriteBase /


    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d


    RewriteRule ^ index.php [QSA,L]

    Alles funktoniert, nur halt nicht mit der URL immer kommt bplaced.net/404 Error Fehler, ich glaube der Webprovider hat eine htaccess Datei oder so erstellt als Schutz das wenn ein Verzeichnis oder Datei nicht gibts, das dann diese Errormeldung erscheint.



    vardump: string(42) "/users/varez-data/www/bk/contents/page.php" (funktoniert)

    Danke dir aber es scheint ein Problem da zu stehen.



    Warning: preg_replace() [function.preg-replace]: Compilation failed: range out of order in character class at offset 14 in /users/varez-data/www/bk/index.php on line 12


    Falls ich etwas in der URL schreibe kommt direkt bplaced.net/404 Fehlerseite

    * contents * ^^ . aufjedenfall weiß ich nicht woran es liegt <.<


    Sogesehen möchte/würde ich es am besten so haben: example.de/register und nicht example.de/register.php or ?page=register .. aber meine Erfahrung reicht nicht aus um es durchzusetzen

    Danke erstmals, jedoch klappt es irgendwie bei mir nicht.
    Ich habe nur eine index.php datei namens page.php, geht es auch wenn ich alles zsm fasse? das mit defined('System')?


    page.php
    [PHP]
    <?php
    require_once 'dbconfig.php';


    define('SYSTEM', true);
    define('CONTENTS', 'contents/');


    $ls_page = !empty($_GET['page']) ? trim($_GET['page']) : 'start';


    switch($ls_page) {
    case 'start':
    $ls_filename = 'page.php';
    break;
    case 'register':
    $ls_filename = 'register.php';
    break;
    default:
    header("HTTP/1.0 404 Not Found");
    $ls_filename = '404.php';
    break;
    }

    if(!file_exists(CONTENTS . $ls_filename)) {
    header("HTTP/1.0 503 Service Unavailable");
    $ls_filename = '404.php';
    }

    ob_start();

    include CONTENTS . $ls_filename;

    $ls_content = ob_get_clean();
    ?>


    <?php
    defined('SYSTEM') OR EXIT('No direct script access allowed');
    ?>
    <!DOCTYPE html>
    <html lang="de">
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0 user-scalable=no">
    <style>
    @-ms-viewport{ width:device-width; }
    </style>
    <!-- STYLESHEETS -->
    <link rel="stylesheet" href="css/style.css" type="text/css">
    <link rel="stylesheet" href="css/normalize.css" type="text/css">
    <!-- STYLESHEETS END -->


    <title>Homepage</title>
    </head>
    <body>


    <?php
    include 'header.php';
    echo $ls_content;
    ?>
    [/PHP]


    1. Wenn ich z.B oben start eingebe, leitet er mich nicht weiter zur startseite.php , in meinem fall page.php.


    2. Wenn ich mich in der page.php befinde und auf der URL register.php klicke, zeigt er mir direkt No direct script access allowed an.

    Guten Tag,


    ich würde gerne mein Include etwas sichern und er zeigt mir jedoch ein Fehler an. Ich bin mir sicher das ich es nicht richtig verstanden habe.


    [PHP]
    <?php
    // Header \\
    if(isset($_REQUEST['header']) && !ereg('/',$_REQUEST['header'])) {
    include($_REQUEST['header']);
    } else {
    echo "Fehler";
    }
    ?>
    [/PHP]


    Meine Datei ist im gleichen Ordner und heißt header.php , doch er sagt mir Fehler aus.

    Guten Tag,


    mein Script sagt mir immer die Fehlermeldung: Email oder Passwort nicht gefunden. Die Daten habe ich richtig eingeben(Falls Kommentar kommt das ich ggf. die Daten nicht richtig angegeben habe).


    Hier das Scirpt:



    [PHP]
    <?php
    session_start();


    if(isset($_POST['submit'])) {


    require_once "sec/verbindung.inc.php";


    $errMsg = '';

    $email = $_POST['email'];
    $password = $_POST['password'];

    if($email == '')
    $errMsg .= 'Bitte trage deine Email ein';


    if($password == '')
    $errMsg .= 'Bitte trage dein Passwort ein';

    if($errMsg == '') {
    $records = $verbindung->prepare('SELECT id,email,password FROM user_datas WHERE email = :email');
    $records->bindParam(':email', $email);
    $records->execute();
    $results = $records->fetch(PDO::FETCH_ASSOC);
    if(count($results) > 0 && password_verify($password, $results['password'])) {
    $_SESSION['email'] = $results['email'];
    header('location:dashboard.php');
    exit;
    } else {
    $errMsg .= 'Email oder Password nicht gefunden';
    }
    }
    }
    ?>


    <?php
    if(isset($errMsg)){
    echo '<div style="color:#FF0000;text-align:center;font-size:12px;">'.$errMsg.'</div>';
    }
    ?>
    <form action="" method="POST">
    <p><input type="email" name="email" placeholder="E-Mail Adresse"></p>
    <p><input type="password" name="password" placeholder="Passwort"></p>
    <p><input type="submit" name="submit"></p>
    </form>
    [/PHP]


    Habe auch nachgeschaut.


    Es liegt hier dran:
    && password_verify($password, $results['password'])
    Denn, wenn ich es entferne gehts aber macht ja auch kein Sinn ohne Passwort sich einzuloggen.


    Problem 2:


    Wenn ich z.B
    inlcude "functions.php"; in einem Script schreibe mit richtigem Pfad dann funktonieren die Funktionen nicht. Er zeigt mir immer
    Call to a member function login() on a non-object in /users/varez-data/www/homepage/log/index.php on line 15

    Guten Tag,


    meine Frage ist es , wie ist es möglich, wenn etwas fehlschlägt das die Aktion dann nicht weitergeht. Hier ein Beispiel von mir:



    if(empty(trim($_POST['name']))) {
    echo " Das Feld des Namen ist leer. ";
    }
    elseif(strlen($_POST['name']) < 3) {
    echo " Der Name darf nicht kürzer als 3 Zeichen sein.";
    }


    if(empty(trim($_POST['new-name']))) {
    echo " Das Feld des New-Name ist leer. ";
    }
    elseif(strlen($_POST['new-name']) < 3) {
    echo " Der New-Name darf nicht kürzer als 3 Zeichen sein.";
    }


    Wenn ich z.B einfach auf Senden drücke und die Felder leer lasse dann sagt er mir:
    Das Feld des Namen ist leer. Das Feld des New-Name darf nicht leer sein.


    Ich möchte aber das er das Schritt für Schritt macht. Wenn das Feld Name und der New-Name leer ist dann soll er erstmal nur sagen das, dass Feld Name leer ist und nicht direkt beides.


    Man könnte es auch zsm fassen wie if(empty(trim($_POST['name'])) && empty(trim($_POST['new-name'])) und sagen das man alle Plichtfelder ausfüllen muss aber dann passt es mit mein Skript nicht deswegen Frage ich es jetzt hier mal.