Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

variablen schritart, größe und farbe zuweisen





Frage

...trotz intensiver suche und ausprobieren ist es mir noch nicht gelungen die variable $Counter zu formatieren. Kann mir jemand helfen? echo "document.write(´".$Counter."´);"; gruß beruno

Antwort 1 von Nessus

Ich haue mich weg.......
Seit wann kann man eine Variable formatieren?
Du kannst Variablen:
1. Ändern
2. Mit Inhalten füllen
3. Löschen
4. Überschreiben
und einiges mehr, aber Formatieren??

;-))))

Nessus

Antwort 2 von beruno

ich meine natürlich die ausgabe dieser variablen...
...in form von:
echo "<font face \"verdana\" color =\"grey\">$vari</font>";
kriegs beidem anderen beispiel nicht hin...
gruß
beruno

Antwort 3 von beruno

@Nessus
die Lösung:

$Counter ="<font face \"verdana\" color =\"blue\">$Counter</font>";
echo "document.write(´".$Counter."´);";

gruß
beruno

Antwort 4 von Nessus

Naja, wenn man bedenkt das Du die Variable damit immer noch nicht formatiert hast und diese HTML-Anweisung definitiv an der falschen Stelle ist, ist es OK.

Nessus

Antwort 5 von beruno

@Nessus
1. :...ich wollte nie die variable formatieren, sondern die Ausgabe der variablen...nämlich Farbe, Schriftart, Schriftgröße etc........bestimmen.
2.:...warum sollte diese HTML-Anweisung an der falschen Stelle sein....?
3.:...der komplette quelltext:

<?php
$DateinameCount = "count.txt";
$DateinameIP = "ip.txt";
$Zeitsperre = 6; //Sekunden
$Gefunden = FALSE;
$IPListe = file($DateinameIP);
if(count($IPListe)>0)
{foreach($IPListe as $Zeile)
{$GesplitteteZeile = explode("|", $Zeile);
if(($GesplitteteZeile[0]+$Zeitsperre)>time())
{$NeueIPListe[] = trim($Zeile)."\n";
}}if(count($NeueIPListe)>0)
{foreach($NeueIPListe as $Zeile)
{$GesplitteteZeile = explode("|", $Zeile);
if(trim($GesplitteteZeile[1])==$_SERVER[´REMOTE_ADDR´])
{$Gefunden = TRUE;}}}}
$FilePointerIP = fopen($DateinameIP, "w");
if(count($IPListe)>0 && count($NeueIPListe)>0)
{foreach($NeueIPListe as $Zeile)
{ fwrite($FilePointerIP, trim($Zeile)."\n");
}}if(!$Gefunden){
fwrite($FilePointerIP, time()."|".$_SERVER[´REMOTE_ADDR´]."\n");
}fclose($FilePointerIP);
$FilePointerCount = fopen($DateinameCount, "r+");
$Counter = fread($FilePointerCount, filesize($DateinameCount));
if(!$Gefunden)
{$Counter++;
rewind($FilePointerCount);
fwrite($FilePointerCount, $Counter);
}fclose($FilePointerCount);
$Counter ="<font face= \"verdana\" color =\"#707070\" size= \"2\">$Counter</font>";
echo "document.write(´".$Counter."´);";
?>

Antwort 6 von drago

@Nessus zu Antwort 1

Unter Formatieren versteht man bei Variablen
nicht das Formatieren im Sinne von Festplatten und Disketten,
sondern die Ausgabe derer.
Gerade bei Zahlen ist man oft auf eine formatierte Ausgabe angewiesen,

z.B. Genaue ZifferZahl:
1,56 Euro statt
1,56789345674323565 Euro
(begrenzen auf 2 Dezimalstellen, das geschieht nicht automatisch,
sondern muss gemacht werden)

Beim Programmieren muss man genau das beachten.
Das nennt man Formatieren.

Oder anders ausgedrückt:
Die Variablen in einer bestimmten Form ausgeben.
(ihnen ein "Format" geben, eben Formatieren).

.

Antwort 7 von Nessus

@Drago

Danke für deine Ausführung, leider liegt das nicht in diesem Zusammenhang. Das Format der Variable bestimme ich beim erstellen der Variable, in dem ich den Typ definiere. Also nicht Formatieren, sondern definieren

@beruno
Der richtige Ort für diese Formatanweisung ist im HTML-Output. Du hast Glück, das PHP automatisch das richtige Variablenformat zuweist. Du hast aus der Variable die vorher eine Zahl war plötzlich eine vom Typ Text gemacht. Sprachen wie C, C#, VB und viele mehr würden da komplett aussteigen.
Zumal, was wäre wenn Du mit dieser Variable noch weiter arbeiten willst?
Bad Code.....

Nessus

Antwort 8 von beruno

@Nessus
na, zum Glück haste den Lachanfall überlebt ;-)
...im script wird die Ausgabe der variablen so aufgerufen:

<script language="javascript" src="countpit.php"></script>

sehe da keine Möglichkeit noch die Ausgabeform zu bestimmen
...aber vielleicht kannst du mir da weiterhelfen, oder hast eine Anregung für mich.......
gruß
beruno

Antwort 9 von drago

@nessus zu antwort 7

Mit deiner Antwort mit der Definition liegst du nicht richtig.

Bei der Definition einer Variable legst du ihren TYP fest,
nicht deren Ausgabeform.

Z.B. eine Fliesskommazahl, wie oben bereits erklärt,

Bei der Definition legst du fest, dass es eine Fleisskommazahl ist,
bei der Formatierung legst du ihre Ausgabeform fest.

Eben wieviele Dezimalstellen du am Bildschirm sehen willst.

Bei Geldbeträgen z.B. sind es zwei Dezimalstellen,
das legst du aber nicht bei der Definition fest,
sondern erst bei der Ausgabe.

Auch führende Nullen sind manchmal notwendig,
diese werden auch nicht bei der Definition festgelegt,
sondern erst bei der Ausgabe.
Auch kaufmännisch runden, Stellen abschneiden etc.
wird nicht durch die Definition beeinflusst,
eine Fliesskommazahl bleibt eine Fliesskommazahl,
sondern legt das Ausgabeformat fest.
(meistens macht es der Programmierer mit extra Befehlen)


Das nennt man eben formatierte Ausgabe.
Bei Typ String, für Zeichenketten,bzw. Char, legst du fest
dass es sich um Zeichen, bzw. Zeichenketten handelt.

Ob sie nun fett, kursiv, rechtsbündig, linksbündig etc.
am Bildschirm erscheinen, wird nicht durch die Definition festgelegt,
sondern durch das Ausgabeformat.
Und dieses gestaltet sich der Programmierer nach seinem Bedarf.


.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: