tutorials.de-Buchverschenkaktion 08/2010
+ Auf Thema antworten
  1. #1
    redX redX ist offline Mitglied Brokat redX hat eine blütenweiße Weste
    Registriert seit
    Nov 2003
    Beiträge
    464
    Wie das Topic schon sagt, wie handelt PHP den Wert false?
    Ich frag mich das einfach, da nichts ausgegeben wird, wenn ich die Variable anzeigen möchte.

    Ich möchte einfach den Wert true oder false in die DB speichern. Aber false steht dort niemals drin:

    PHP-Code:
                DB::query("
                    INSERT INTO `arena_event_history` (
                        `id` ,
                        `turn` ,
                        `fs_arena_users` ,
                        `location` ,
                        `creation_time` ,
                        `params`,
                        `completed`
                    ) VALUES (
                        NULL,
                        '" 
    Event_History::$turn "',
                        '" 
    $_SESSION["loginUser"] . "',
                        '" 
    $this->getLocationName() . "',
                        '" 
    $this->getCreationTime() . "',
                        '" 
    $this->paramsToString() . "',
                        '" 
    $this->isCompleted() . "'
                    )
                "
    ); 
    Also das $this->isCompleted gibt mir entweder true, oder nichts zurück.

    Sogar das gibt mir nichts aus:
    PHP-Code:
        $myVar false;
        echo 
    "save! [" $myVar "]"
    Wieso gibt das einfach nichts aus und nicht false? *sich am Kopf kratz*

    PHP Version: 5.1.2

    Gruss
    X
    Es gibt ein leben vor dem Tod

  2. PHP 5 / MySQL 5 Seminar (22 Stunden Video-Training)

    Preis: früher: 39,95€ - jetzt nur: 7,99€
    Innerhalb Deutschlands versandkostenfrei!

    PHP 5 / MySQL 5 Lernkurs – 22 Stunden Video-Training auf DVD
    - PHP-, MySQL- und PHPMyAdmin-Grundlagen
    - Datenbankprogrammierung, objektorientierte Programmierung
    - Geeignet für Windows XP und Windows Vista


    Hier geht es zum Angebot

    Über 1.000 weitere IT-Bücher zum Sonderpreis lieferbar!


  3. #2
    Benutzerbild von Felix Jacobi
    Felix Jacobi Felix Jacobi ist offline do ut des Felix Jacobi hat die Renommee-Anzeige deaktiviert
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    4.965
    Blog-Einträge
    65
    Wenn du einen String in einer Variable speichern willst, dann musst du ihn mit Anführungszeichen oder Semikolon als String markieren...
    PHP-Code:
    $myVar "false";
        echo 
    "save! [" $myVar "]"
    Wenn du einfach nur $myVar = false; schreibst, wird die Variable 'gelöscht', arbeitet also wie die PHP Funktion unset().

    PHP-Code:
    <?php
    error_reporting
    (E_ALL);

    $test true;

    if(
    $test) echo "test: ".$test;

    ?>
    Wenn ich das teste, kommt übrigens nur das hier raus:
    PHP-Code:
    test
    Funktioniert also auch nicht ganz so wie du es willst, würde ich sagen.
    Geändert von Felix Jacobi (10.07.06 um 14:09 Uhr)
    KIDS Kinderbetreuungsdienst
    Xing

    They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety.
    Benjamin Franklin

  4. #3
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.506
    Blog-Einträge
    10
    Der Boolesche Typ beschreibt nur einen Wahrheitswert. Daher gibt es bei Ausgaben dieses Typs auch nicht etwa „true“ oder „false“ ausgegeben. MySQL hat übrigens auch keinen booleschen Spaltentyp.
    Markus Wulftange

  5. #4
    redX redX ist offline Mitglied Brokat redX hat eine blütenweiße Weste
    Registriert seit
    Nov 2003
    Beiträge
    464
    Okai. Dankeschön. Ist wiedermal etwas anderst als in Java

    Gruss
    X
    Es gibt ein leben vor dem Tod

  6. #5
    Benutzerbild von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied Schnitzel Sven Mintel hat die Renommee-Anzeige deaktiviert
    tutorials.de Premium-User
    Registriert seit
    Aug 2003
    Ort
    Prenzlberg
    Beiträge
    18.128
    Blog-Einträge
    38
    Zitat Zitat von Gumbo
    MySQL hat übrigens auch keinen booleschen Spaltentyp.
    ....
    MySQL 5.0 Reference Manual :: 11.1.1 Overview of Numeric Types

  7. #6
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.457
    Blog-Einträge
    5
    Hallo,

    Zitat Zitat von [Flex]
    Wenn du einfach nur $myVar = false; schreibst, wird die Variable 'gelöscht', arbeitet also wie die PHP Funktion unset().
    Wie bitte? Woher hast du denn das?

    PHP-Code:
    <?php

    $foo 
    'bar';
    $foo false;

    if (isset(
    $foo)) echo '$foo wurde nicht gelöscht.';

    ?>
    Grüße,
    Matthias
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  8. #7
    Benutzerbild von Felix Jacobi
    Felix Jacobi Felix Jacobi ist offline do ut des Felix Jacobi hat die Renommee-Anzeige deaktiviert
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    4.965
    Blog-Einträge
    65
    Hmm, ich hatte es so getestet

    PHP-Code:
    <?php
    $test 
    false;

    if(
    $test) echo "test: ".$test;

    ?>
    Und da wird gar nichts ausgegeben... Vielleicht habe ich da etwas vorschnell geurteilt.
    KIDS Kinderbetreuungsdienst
    Xing

    They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety.
    Benjamin Franklin

  9. #8
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.457
    Blog-Einträge
    5
    Hallo,

    if prüft nicht, ob eine Variable gesetzt ist oder nicht, sondern ob der Wert des Ausdrucks true oder false ist (notfalls auch mit Casting). Eine nicht gesetzte Variable wird dabei als false interpretiert und nebei wird eine Notice geworfen („Undefined variable“).

    Grüße,
    Matthias
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

Ähnliche Themen

  1. Antworten: 7
    Letzter Beitrag: 29.09.06, 22:45
  2. oncontextmenu="return false" onselectstart="return false"
    Von an_dy im Forum Javascript & Ajax
    Antworten: 8
    Letzter Beitrag: 29.07.06, 11:05
  3. den Wert von "Submit" weiterverwenden, aber wie?
    Von tomkn im Forum HTML & XHTML
    Antworten: 2
    Letzter Beitrag: 26.04.06, 15:44
  4. Antworten: 4
    Letzter Beitrag: 04.07.04, 20:40
  5. "IsValid" bleibt immer auf "false"
    Von Saber im Forum .NET Archiv
    Antworten: 8
    Letzter Beitrag: 03.02.04, 23:31

Lesezeichen

Lesezeichen