WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 17.02.2004, 09:31   #1
Seppo
Veteran
 
Registriert seit: 20.09.2002
Alter: 42
Beiträge: 465


Seppo eine Nachricht über ICQ schicken
Standard php - warum variable nicht leer ?

guten morgen zusammen!

hab wiedermal ein kleines php problem!
also ich hab eine txt datei wo profile gespeichert sind!
sieht circa so aus:

Nickname ||| passwort ||| email ||| icq ||| signatur

und dann geb ich wo anders auf der ausgabe seite meine vorhandenen einträge aus (also jetzt nicht die profile)

und zu jedem eintrag les ich mir jetzt das profil aus um email etc anzuzeigen!

das problem is jetzt bei der signatur
also ich will natürlich nur signatur ausgeben wenn eine vorhanden!

also hab ich mir gedacht!

if ($sig != "") {echo "
<HR>$sig
";}

das komische is nur das er das <HR> das hier ausgegeben wird immer ausgibt auch wenn signatur nicht vorhanden
das komische is auch das er sie auch dann ausgibt wenn ich zu testzwecken mal gemacht habe $sig == ""

die bedingung is also immer erfüllt aber warum ?????

bitte um hilfe!

tia
seppo
____________________________________
http://www.disco-eldorado.at
Seppo ist offline   Mit Zitat antworten
Alt 17.02.2004, 09:43   #2
bigshorty71
Newbie
 
Registriert seit: 01.07.2002
Beiträge: 6


Standard

guten morgen!

Hast du es schon mit dem Befehl 'empty()' versucht?
Sollte etwa so aussehen:
if ($sig != "" or !empty($sig)) {echo "
<HR>$sig
";}

Möglicherweise musst du die syntax noch anpassen. Habe schon länger nichts mehr gemacht.

Hoffe, es funkt.

bigshorty71
bigshorty71 ist offline   Mit Zitat antworten
Alt 17.02.2004, 09:43   #3
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard

Hi!

Du hast vergessen zu sagen, wie du die Signatur ausliest.
Denn da wird wahrscheinlich das Problem liegen.

Außerdem wäre interessant, was die Variable enthält, wenn sie nicht leer ist. (Vielleicht ein Leerzeichen?)

mfg

WB
wbendl ist offline   Mit Zitat antworten
Alt 17.02.2004, 10:07   #4
bigshorty71
Newbie
 
Registriert seit: 01.07.2002
Beiträge: 6


Standard

Hallo!

Dachte, das auslesen hast du schon. Muss dich leider enttäuschen - mit textdateien auslesen hab ich mich noch nicht auseinandergesetzt, bin dazu irgend wie zu faul , aber vielleicht hilft dir dieser link:
http://www.selfphp.info
Ich hab auch immer mit diesem schummler gearbeitet.
Vom ablauf her würd ich sagen:
- textdatei öffnen
- eine zeile einlesen, nach dem trennzeichen splitten und weiterverarbeiten
- nächste zeile einlesen
usw.

Zu deiner zweiten frage die funktionsbeschreibung zu 'empty':
http://www.selfphp.info/funktionsref...onen/empty.php
Ist zwar auch nicht viel, aber vielleicht reicht es.

mfg

bigshorty71
bigshorty71 ist offline   Mit Zitat antworten
Alt 17.02.2004, 10:19   #5
snowman
Inventar
 
Registriert seit: 26.09.1999
Beiträge: 2.569


Standard

wenn das nicht geht:
Zitat:
Original geschrieben von Seppo
if ($sig != "") {echo "
<HR>$sig
";}
geht das logischerweise auch nicht:
Zitat:
Original geschrieben von bigshorty71
if ($sig != "" or !empty($sig)) {echo "
<HR>$sig
";}
gruss,
snowman
____________________________________
MediaMarkt? Ich bin doch nicht blöd, Mann!

Vorsprung durch Technik

Lesen Sie keine Anleitungen, FAQs, Readme - Files. Reine Zeitverschwendung. In den Newsgroups und Foren gibt es genug kompetente Leute, die mit großer Geduld immer wieder dieselben einfachen Fragen beantworten. Völlig kostenlos noch dazu!
snowman ist offline   Mit Zitat antworten
Alt 17.02.2004, 10:49   #6
Seppo
Veteran
 
Registriert seit: 20.09.2002
Alter: 42
Beiträge: 465


Seppo eine Nachricht über ICQ schicken
Standard

naja ich leere die variable nach jedem postbeitrag mit einem unset!
funkt auch soweit!

was die variable enthält is mir ein rätsel weil in der ausgabe kommt immer genau nix! also wenn ichs mit echo ausgeben lasse

achja ich lese die die profil datei zeilenweise ein und splitte sie an den stellen " ||| " in 5 teile.. funkt auch alles perfekt.. nur eben die letzte variable $sig ist irgendwie immer weder voll noch leer.. ich kapiers einfach nicht
____________________________________
http://www.disco-eldorado.at
Seppo ist offline   Mit Zitat antworten
Alt 17.02.2004, 11:00   #7
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard

Hi!

So habe ich mir das gedacht.

Püf mal ob die Variable ein Leerzeichen enthält. Das würdest du im Browser nicht sehen.
Z. B. mit echo "
<HR>X$sigX
";
oder mit if ($sig ==" ")........

mfg

WB
wbendl ist offline   Mit Zitat antworten
Alt 17.02.2004, 11:03   #8
snowman
Inventar
 
Registriert seit: 26.09.1999
Beiträge: 2.569


Standard

machmal so:

$sig = trim($sig)

gruss,
snowman
____________________________________
MediaMarkt? Ich bin doch nicht blöd, Mann!

Vorsprung durch Technik

Lesen Sie keine Anleitungen, FAQs, Readme - Files. Reine Zeitverschwendung. In den Newsgroups und Foren gibt es genug kompetente Leute, die mit großer Geduld immer wieder dieselben einfachen Fragen beantworten. Völlig kostenlos noch dazu!
snowman ist offline   Mit Zitat antworten
Alt 17.02.2004, 11:21   #9
käptn
Inventar
 
Registriert seit: 04.11.2001
Alter: 45
Beiträge: 2.150


Standard

Also, unset($var) is mit $var = null; gleichzusetzten.

Liest du die Datei mit fgets() aus, hast du ganz am Schluss noch einen Zeilenvorschub "\n".

~
____________________________________
LOL - Mein erstes Post im Programmier Forum

MACINTOSH - Most Applications Crash, If Not The Operating System Hangs
käptn ist offline   Mit Zitat antworten
Alt 17.02.2004, 13:07   #10
Seppo
Veteran
 
Registriert seit: 20.09.2002
Alter: 42
Beiträge: 465


Seppo eine Nachricht über ICQ schicken
Standard

hmm erstmal danke an alle!

also ich kanns leider erst am abend probieren wie das mit dem /n ist aber ich dachte wenn ichs zeilenweise reinlese also mit file(datei)
dann sind die zeilenumbrüche eh automatisch weg... werds mal testen

ach und so mit $sig == " " hab ich gestern schon probiert! da war dann die bedingung nie erfüllt! und is somit nie reingegangen um das hr auszugeben
____________________________________
http://www.disco-eldorado.at
Seppo ist offline   Mit Zitat antworten
Antwort


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

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.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:15 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag