Suche auf lima-city
-
in: Problem mit Umlauten seit PHP 5
geschrieben von tengames
Hallo
um zu verhindern, dass ein bereits als UTF-8 vorliegender String nochmal (doppelt) encoded wird,
kann man folgende Funktion nutzen:
function str_encode_utf8($str) { if (mb_detect_encoding($str, 'UTF-8', true) === false) { $str = utf8_encode($str); } return $str; }
damit wird String nur zu UTF-8 umgewandelt, wenn es noch kein UTF-8 String ist.
also anstatt$nachricht = utf8_encode($nachricht);
evtl. besser$nachricht = str_encode_utf8($nachricht);
und nochwas ... damit Du in MySQL "sicher" speicherst,
am besten immer mysql_real_escape_string() beutzen
also so$nachricht = mysql_real_escape_string($nachricht);
... nach Öffnen der Datenbank-Verbindung und vor Schreiben in die DB-Tabelle
ich weiss jetzt nicht, ob in mysql_real_escape_string()
auch gleich der Zeichensatz (UTF-8) mit erledigt wird,
aber es hilft auf jeden Fall schonmal gegen SQL-injection-Hacks ...
-
in: Daten aus Datei lesen
geschrieben von tengames
warum eigentlich so kompliziert mit fopen() ... fread() ... fclose()
... geht doch viel einfacher ... mit file_get_contents()
function template_get_info($Templatefile) { $this->temp_erg = file_get_contents($Templatefile); return $this->temp_erg; }
Dann hast Du auch kein Problem mit Dateizeiger oder Dateigröße
und ich denke es geht auch ohne Funktion, finde die hier etwas überflüssig,
da passiert ja nicht viel, ausser Datei Inhalt einlesen, also einfach direkt einlesen
abstatt$this->temp_str = template_get_info($Templatefile);
direkt so$this->temp_str = file_get_contents($Templatefile);
also file_get_contents() ist ja für sich schon eine PHP-Interne Funktion
eine Funktion lohnt sich doch nur, wenn mann mehrere Aufgaben in einem Aufruf erledigen will
und ich sehe hier nur eine Aufgabe, also würde ich es direkt machen
-
in: foreach aus SimpleXMLElement Object
geschrieben von tengames
hemiolos schrieb:
musst du nicht:
$res = null; $i = 0; foreach($resobj->channel->item as $item) { $res[$i] = $item; $i++; } // test output echo '<pre>' . print_r($res,true) . '</pre>';
nö, damit bekomme ich: Warning: Invalid argument supplied for foreach() ....
denke mal weil ja jeder channel (je RSS feed) erst noch in einem Array steckt
Hier nochmal mit Beispiel-Daten zum testen: (Twitter nur als Beispiel-Daten)
$quellen = array(); $quellen[0] = 'http://twitter.com/statuses/user_timeline/limacity.rss?count=4'; $quellen[1] = 'http://twitter.com/statuses/user_timeline/Dirk_Bach.rss?count=4'; $quellen[2] = 'http://twitter.com/statuses/user_timeline/IngolfLueck.rss?count=4'; $quellen[3] = 'http://twitter.com/statuses/user_timeline/Oliver_Pocher.rss?count=4'; $i=0; foreach($quellen as $qdata) { $resobj[$i] = simplexml_load_file($qdata); $i++; } echo "<pre>\r\n"; print_r($resobj); echo "</pre>\r\n";
damit klappt es, nur die RSS-Items in ein Array zu packen:
$k=0; foreach($resobj as $data) { foreach($data->channel->item as $idata) { $iteminfo[$k][] = $idata; } $k++; } echo "<pre>\r\n"; print_r($iteminfo); echo "</pre>\r\n";
Ergebnis sieht dann so aus (so will / brauche ich es dann auch)
Array ( [0] => Array ( [0] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [1] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [2] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [3] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) ) [1] => Array ( [0] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [1] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [2] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [3] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) ) [2] => Array ( [0] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [1] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [2] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [3] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) ) [3] => Array ( [0] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [1] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [2] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [3] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) ) )
ABER ... und hier kommt mein Problem !!!!
---> ? komisch finde ich immernoch, warum ich mit folgendem jeweils nur das erste Item je Feed bekomme
foreach($resobj as $data) { $iteminfo1[] = $data->channel->item; }
Das Ergebnis ist je nur das erste Item je RSS Feed: also direkt das erste Object aus dem item-Array ???
Array ( [0] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [1] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [2] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) [3] => SimpleXMLElement Object ( [title] => .... [description] => .... [pubDate] => .... [guid] => .... [link] => .... ) )
weil in den Ausgangs-Daten $resobj ist das Object [item] ja jeweils ein Array
also sollte man mit $data->channel->item einer Variable dieses Array zuweisen können? oder?
ist für mich absolut unlogisch, dass dabei dann je nur das erste Array-Elemet raus kommt, und nicht das ganze item Array
logisch wäre es mit $data->channel->item[0] dass nur das erste Element raus kommt,
aber ähhhhhmmm .... was ist hier eigentlich los? .... ich verzweifel an dieser Logik !!!
HELP !!! .. Danke!
-
in: foreach aus SimpleXMLElement Object
geschrieben von tengames
Hallo
ich lese 4 verschiedenen RSS-Feeds auf einmal ein
$quellen = array(); // je item im $quellen Array eine URL zu einem RSS Feed $i=0; foreach($quellen as $qdata) { $resobj[$i] = simplexml_load_file($qdata); $i++; }
soweit ok: print_r($resob) lefert die 4 Arrays mit jeweils dem SimpleXMLElement Object aus der rss
die Struktur ist folgendermasen (hier BSP mit nur Daten aus 2 RSS Feeds und je 2 Items ohne Inhalte)
Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [version] => 2.0 ) [channel] => SimpleXMLElement Object ( [title] => ... [link] => ... [description] => ... [language] => ... [ttl] => ... [item] => Array ( [0] => SimpleXMLElement Object ( [title] => ... [description] => ... [pubDate] => ... [guid] => ... [link] => ... ) [1] => SimpleXMLElement Object ( [title] => ... [description] => ... [pubDate] => ... [guid] => ... [link] => ... ) ) ) ) [1] => SimpleXMLElement Object ( [@attributes] => Array ( [version] => 2.0 ) [channel] => SimpleXMLElement Object ( [title] => ... [link] => ... [description] => ... [language] => ... [ttl] => ... [item] => Array ( [0] => SimpleXMLElement Object ( [title] => ... [description] => ... [pubDate] => ... [guid] => ... [link] => ... ) [1] => SimpleXMLElement Object ( [title] => ... [description] => ... [pubDate] => ... [guid] => ... [link] => ... ) ) ) ) }
jetzt will ich je rss-feed nur den Inhalt vom item Objekt haben
also etwa so:
$itemdata[0] = $resobj[0]->channel->item;
$itemdata[1] = $resobj[1]->channel->item;
usw.
aber das klappt dann nicht: mit foreach ?!?!???
$k=0; foreach($resobj as $data) { $itemdata[$k] = array(); $itemdata[$k] = $data->channel->item; $k++; } echo "<pre>\r\n"; print_r($itemdata); echo "</pre>\r\n";
so bekomme ich jeweils nur das erste item je RSS, nicht alle items je RSS
aber item ist doch oben ein Array, warum kommt es nicht in $itemdata an, sondern nur das 1. Element?
was ist falsch, wo ist der denkfehler?
... ich kapier's nicht, müsste doch gehen ?
direkter Zugriff auf das item Objekt (welches sich im channel Objekt befindet) oder ?
Danke!
EDIT:
habe es doch hinbekommen
$k=0; foreach($response1_obj as $data) { foreach($data->channel->item as $idata) { $iteminfo[$k][] = $idata; } $k++; }
so gehts,
wundert mich aber, warum ich nicht direkt das Array einer neuen Variable zuweisen kann ?!
sondern das item Array nochmal durchlaufen muss ?!?!
-
in: PHP-MySQL-Skript bricht Seite ab
geschrieben von tengames
Hallo
bei einer Endlosschleife würde wohl irgendwann als Fehlermeldungen kommen
entweder "out of memory error" oder "execute time error" , also Speicher voll oder Script-Laufzeit überschritten
sind Fehlermeldungen an? (display errors)
was passiert genau, läd die Seite (im Browser) oder ist sie "fertig" geladen
aber ohne genauere Infos wird man da nicht helfen können
welcher Server? wie sieht der Quellcode aus (die Änderungen)? etc?
-
in: Wie den Charset / die Codierung herausfinden?
geschrieben von tengames
reimann schrieb:
Welche Kollation von utf8 du nimmst ist abhängig von deinem Vorhaben.
ich denke mal general
einfach nur bei CREATE TABLE am Ende: DEFAULT CHARSET=utf8
vielleicht liegt da ja der Fehler, heisst es utf8 oder utf-8 (in MySQL)
ich habe den folgenden Code:
$setup_result1 = mysql_query("CREATE TABLE IF NOT EXISTS `".$db_tabelle1."` ( `id` int(9) NOT NULL AUTO_INCREMENT, `titel` varchar(250) NOT NULL, `url` varchar(250) NOT NULL, `descr` text NOT NULL, `img` varchar(250) NOT NULL, `kategorie` varchar(100) NOT NULL, `source` varchar(100) NOT NULL, `status` varchar(30) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ");
oder muss ich für jede Spalte den Charset definieren, .... wie?
bzw. welche Kollation könnt Ihr mir empfehlen ?
Danke
-
in: Wie den Charset / die Codierung herausfinden?
geschrieben von tengames
also .... eigentlich ganz einfach
es geht um CSV Daten, die ich in der Datenbank (MySQL) cachen will
da die einzelnen CSV-Listen von verschiedenen Quellen sind,
sind die Inhalte u.a auch in unterschiedlicher codierung
für das Speichern in der DB will ich aber eine einheitliche codierung
also muss ich zuerst rausfinden, welche codierung die Quell-Daten sind
um sie dann ggf. die codierung (Charset) "passend" für die DB zu ändern
denn wenn ich utf8 nochmal utf8_encode() mache kommt totaler müll bei raus
meine MySQL Tabelle habe ich mit DEFAULT CHARSET=utf8 angelegt
aber trotz mysql_real_escape_string() vor Speichern kommt z.T. aber kein utf-8 in der DB an
$spalte1 = mysql_real_escape_string($string1); // bei bestehender Verbindung
was mich eh wundert,
sollte doch eigentlich den DEFAULT CHARSET der MySQL verbindung nutzen, oder?
also
wie erkenne ich "unterschiedliche" Charset / Codierung von Daten aus CSV (txt)
um diese für den Eintrag in die DB "einheitlich" zu formen ?
was empfeht ihr, utf-8 oder latin1 oder welchen DEFAULT CHARSET sollte man nehmen?
? -
in: Latrinos schneller als Licht?
geschrieben von tengames
wenn es das gibt, dann bin ich aber auch dafür,
dass lima-city auf über-Lichtgeschwindigkeits Server umstellt.
keine 1er und NULLen mehr als so lahme Elektronen, sondern mit Latrinos
:)
ernsthaft:
die Menschen haben auch gedacht, die Erde sei eine Scheibe
da könnte sich die Annahme, es gäbe nichts,
was schneller ist als Licht (-Geschwindigkeit)
auch als fataler Irrtum herausstellen .
hat es nicht mal geklappt ... Musik mit über-Lichtgeschwindigkeit zu senden?
hab da sowas im Hinterköpfchen ... Mozart ? ... igendwas mit verschränkte Quanten-Zustände
Andere Frage zu CERN
hat keiner Angst dass bei Versuchen (im CERN) ein "Schwarzes Loch" entsteht ?
z.B. am 21.12.2011 wäre ein gutes Datum für sowas °° ... oder?
PS: ein Wissenschafts-Papst würde sagen:
.... schneller als Licht ... ?! ... sofort auf den Scheiterhaufen !!!!
:)
-
in: Wie den Charset / die Codierung herausfinden?
geschrieben von tengames
Die Daten habe ich (under Windows7) in eine .txt Datei geschrieben
je Zeile ein Text-Block
und lese sie mit file() in das Array $ausgabe
<?php $tdata = file($meine_txt_datei); $ausgabe = array(); foreach($tdata as $tzeile) { $tzeile = trim(chop($tzeile)); // Zeilen-Umbruch entfernen if (!empty($tzeile)) { // keine leeren Zeilen einlesen $ausgabe[] = $tzeile; } } ?>
also im Text stehen Umlaufe ä ö ü im "Klartext" also ISO-8859-1 oder nicht ?
-
in: Wie den Charset / die Codierung herausfinden?
geschrieben von tengames
Hallo
wenn ich den header Content-Type auf ISO-8859-1 setze
dann kommt mit mb_detect_encoding() trotzdem UTF-8
warum?
<?php header('Content-type: text/html; charset=ISO-8859-1'); $ausgabe[0] = "ich bin ein hübscher Text"; $ausgabe[1] = "Auch mit Umlauten die schön sind"; $ausgabe[2] = "Ich bin nicht utf8-codiert"; $encoding = mb_detect_encoding($ausgabe[0]); echo $encoding; // ---- Ausgabe ist: UTF-8 ?>
wie bekomme ich an die "richtige" Codierung / den korrekten charset ???
Danke! -
in: Ausgabe je Tageszeit
geschrieben von tengames
simuliertes schrieb:
Benutze doch einfach immer $stunde anstatt date("H").
ja, Danke für den Hinweis .... so war auch der Plan ..... hab ich irgendwie vergessen zu ersetzen
weil ich es zuerst mit H versucht habe, dann aber auf G gekommen bin (ohne führende Null)
ich habs jetzt mal auch nur mit if (ohne elseif)
$stunde = date("G"); if ($stunde > 5 AND $stunde <= 11) { $gruss = "an diesem Morgen"; } if ($stunde > 11 AND $stunde <= 14) { $gruss = "zur Mittagszeit"; } if ($stunde > 14 AND $stunde <= 16) { $gruss = "zum Nachmittag"; } if ($stunde > 16 AND $stunde <= 19) { $gruss = "zum Feierabend"; } if ($stunde > 19 AND $stunde <= 22) { $gruss = "an diesem Abend"; } if ($stunde > 22 OR $stunde <= 5) { $gruss = "aus der Nacht"; } $message = "Hallo ".$gruss." ..... Bla blabla ..... Blabla";
beim Gruß aus der Nacht musste ich OR nehmen, da das ja kein Bereich von ... bis ist
sondern alles was nach 22 Uhr ODER vor 6 Uhr ist .... ich hoffe das stimmt so
----> fragt sich was schneller (performanter) ist, nur if oder mit ifelse
simuliertes schrieb:
Tutorials kann man schon seit langem nicht mehr erstellen, soll aber irgendwann nicht mehr eingeführt werden.
lustiger Satz, ich denke das "nicht mehr" sollte "wieder" heissen :)
... fände ich gut, am besten auch gleich mit Kommentar-Funktion
-
in: Ausgabe je Tageszeit
geschrieben von tengames
Hallo
ich möchte je Tageszeit (Morgen, Mittag, Nachmittag, Abend, Nacht)
in einer Meldung die entsprechende Gruß-Formel ausgeben
folgenden Code habe ich bis jetzt;
$stunde = date("G"); if ($stunde >= 6 AND $stunde <= 11) { $gruss = "an diesem Morgen"; } // ---- zwischen 06 und 11 Uhr elseif (date("H") <= 14) { $gruss = "zur Mittagszeit"; } // ---- zwischen 12 und 14 Uhr elseif (date("H") <= 17) { $gruss = "zum Nachmittag"; } // ---- zwischen 15 und 17 Uhr elseif (date("H") <= 21) { $gruss = "zum Feierabend"; } // ---- zwischen 18 und 21 Uhr else { $gruss = "aus der Nacht"; } // ---- zwischen 21 und 05 Uhr $message = "Hallo ".$gruss." ..... Bla blabla ... Blabla";
wenn jemand eine bessere Idee hat (oder Fehler entdeckt) dann bitte her damit,
... auch evtl bessere Gruß-Formeln ... evt für Mittag: Mahlzeit ... etc.
ich wollte es zuerst mit switch ... case machen, aber da kann man (ich) keine "Bereeiche" switchen
... zumindest habe ich es nicht hinbekommen mit switch, nur mit if ... ifelse ...
PS: wenn es gut so ist, wäre dieser Codeschnipsel für ein Tutorial geeignet?
wenn ja, könnte man (ich) es ja dort auch eintragen ..... http://www.lima-city.de/tutorials/list/php
... wie schreibt man hier eigentlich ein Tutorial, ich finde da keinen Button "neues Tutorial erstellen"
?
-
in: jQuery POST Variablen erkennen und nutzen ?
geschrieben von tengames
Hallo
sorry, bei !$empty hab ich mich im BSP vertippt, schon klar das es ohne $ ist :)
auch bei $_REQUEST war es ein Tippfehler, war wohl nicht ganz bei der Sache :O
also zurück zum eigentlichen Problem:
meine Berechnung ist in PHP, daher das Neu-Laden von formular1.php mit Parameter-Übergabe
Danke für Hinweis serialize()
wenn ich das einfüge
<script type="text/javascript"> var str = ''; $('form').submit(function() { var str = $('form').serialize(); return false; }); $(document).ready(function() { $('#rechner').load('meinpfad/inc-formular1.php?'+str); }); </script> <div id="rechner"></div>
könnte es ja funktionieren, tut es aber nicht
wahrscheinlich weil das Formular garnicht im Quellcode steht, dondern im #rechner DIV per load()
gibt es eine Möglichkeit auf das Formular zuzugreifen, das per load() im DIV steht?
oder wie ??? muss ich das Formular in der Datei, die den jQuery enthält, direkt einbauen
?
-
in: jQuery POST Variablen erkennen und nutzen ?
geschrieben von tengames
Hallo
ich lade mit jQuery load() ein Formular in ein DIV
das klappt ja schon mal 1A
Hauptseite:
<script type="text/javascript"> $(document).ready(function() { $('#rechner').load('formular1.php'); }); </script> <div id="rechner"></div>
Bei Absenden des Formulars soll zusätzlich zum Formular eine Ausgabe erfolgen
formular1.php
<form name="form1" method="post" action=""> <br /> Zahl1: <input type="text" name="zahl1" size="10"> <br /> Zahl1: <input type="text" name="zahl2" size="10"> <br /> OK .... <input type="submit" name="go" value="berechnen"> </form> <br /> <?php if ( !$empty($REQUEST['zahl1']) AND !$empty($REQUEST['zahl2']) ) { // ---- Ausgabe der Berechnung z.B. ($zahl1 + $zahl2) ... egal } else { echo "<br /> Bitte Werte eingeben. \r\n"; } ?> <br />
wie bekomme ich die _POST Variablen "ausgelesen" sobald das Formular abgeschickt wurde?
Wenn ich mein Formular direkt aufrufe, klappt es
aber bei Aufruf über jQuery load() sind keine $_REQUEST da, keine Ausgabe der Berechnung
ich dachte mir, einfach die Variablen bei jQuery Load als GET übergeben
<script type="text/javascript"> $(document).ready(function() { $('#rechner').load('formular1.php?zahl1='+zahl1+'&zahl2='+zahl2+''); }); </script> <div id="rechner"></div>
aber dann wird nichtmal mehr das Formular angezeigt, also garnix geladen mit load()
Wie kann ich ein Formular, das per jQuery load() eingebunden ist auch ausführen
so dass beim Ansenden des Formulars die Ausgabe auch angezeigt wird
(so dass im formular1.php die Bedingung mit !empty($_REQUEST zutrifft ?!
help! ... Danke! -
in: Sessions via Ajax
geschrieben von tengames
im Moment ist irgendwas mit SESSIONS am Webspace "kaputt" oder "voll",
habe diese Fehler-Meldung gesehen:
Warning: Unknown: write failed: No space left on device (28) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/home/webpages/tmp) in Unknown on line 0
eine Lösung wäre, die Sessions in eine (MySQL) Datenbank zu speichern
gefunden hier http://de.php.net/manual/de/function.session-set-save-handler.php#60316
PS: Fehlermeldungen auf Lima-City kannst Du per .htaccess anschalten / steuern
dann siehst Du auch die Fehlermeldung, warum SESSIONS leer bleiben (s.o.)
php_flag display_errors on php_value error_reporting 2039
siehe dazu auch Beitrag: php-debug-modus
good luck
-
in: Führerschein für Administratoren als Pflicht!
geschrieben von tengames
nach der Logik müsse man denen, die sich beim Tele-Shopping oder durch Hot-Button Anrufe verschulden auch den Fernseher wegnehmen ^^
oder denen, die nicht täglich duschen den Zugang in öffentliche Verkehrsmittel (und Gebäde) verbieten
... wobei das fänd ich garnicht schlecht ^^
oder denen, die keine KFZ-Meister sind und Ihr Auto auseinandernehmen und wieder zusammenbauen können den Führerschein wegnehmen
oder .... usw
wem fällt noch mehr ein, find ich jetzt fast witzig, wenns nicht so spießig wäre -
in: Etwas stimmt mit den Sessions nicht.
geschrieben von tengames
soweit ich weiss laufen SESSIONS serverseitig, und haben nichts mit dem Router zu tun
aber ich denke es liegt daran, dass Du mit dem neuen Router eine andere IP hast
und das Browsergame vielleicht noch eine "alte" Session gespeichert hat
.... bei Abgleich der IP kommt es dann evtl. zum Fehler (bzw. logout)
Du könntest Dich mit dem alten Router mal "sauber" ausloggen
vielleicht wird dann ja die SESSION auf dem Browsergame Server gelöscht
dann könntest Du DIch mit den neuen Router evtl. auch neu einloggen
sonst mal den Browsergame-betreiber fragen, ob er Deine Session löschen kann
damit Du Dich mit anderer IP (anderer Router) einloggen kannst
aber alles nur Vermutungen
-
in: js funktion mit Parameter ?
geschrieben von tengames
ok, ich will das script als Funktion haben, so dass ich damit auch andere Seiten auslesen kann, als die, wo das script drauf ist
im Moment kann das Script nur die Daten ausesen, von der Seite, wo es eingebunden ist .... document. ....
wie muss ich es ändern, das ich eine beliebige andere Adresse (URL / Seite) damit auslesen kann ?
also irgendwie anstatt document.getElementsByTagName
etwas wie getElementsByTagName von (html-Seite / URL) ... ? -
in: PHP Punkte-System
geschrieben von tengames
und ich bin großer Flug-Anfänger und möchte mit einer F22 im Tiefflug die Welt umrunden ...
edit: .... lass die Finger von sowas als "großer" Anfänger, ...
ich bin mir sicher, dass jedes Script das für sowas "kostenlos" wäre auch derbe Sicherheitslücken haben wird,
das ist nicht mal so schnell programmiert, eine neue virtuelle Währung einzuführen, daher wird, wenn es sowas gibt, es auch richtig Geld kosten, schätze ich mal
-
in: js funktion mit Parameter ?
geschrieben von tengames
Hallo
ich habe ein kleines Javascript um head Meta-Daten auszulesen (title, keywords, description)
<script type="text/javascript"> <!-- for each(var aMeta in document.getElementsByTagName("meta")) { if(aMeta.getAttribute('name') == "keywords") { var mykeywo = (aMeta.getAttribute('content')); } if(aMeta.getAttribute('name') == "description") { var mydescr = (aMeta.getAttribute('content')); } } var mytitle = encodeURIComponent(document.title); --> </script>
wie kann ich daraus jetzt eine Funktion machen,
die mir für eine (per POST übergebene) URL die Daten ausliest ?
Funktions-Aufruf: holemetadaten( POST-URL ) ... wie POST Variable übergeben?
mit Rückgabe der 3 Variablen .... wie bekomme ich die drei Variablen im return ?
-
in: Link zu xml-Datei als Download-Link?
geschrieben von tengames
Danke
hab nochmal gegoogelt ...
header("Pragma: public"); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); Header('Content-Disposition: attachment; filename="datei.xml"');
... macht es nicht Sinn im header als Content-Type: download anzugeben anstatt text/xml ?
nur so aus Interesse ... es funktioniert auch so mit dem BSP von fabo
-
in: Welches CMS benutzt ihr?
geschrieben von tengames
frederik-g schrieb:
Ich benutze Contentlion und ihr?
noch nie gehört
Joomla
Wordpress
Websitebaker
und selbst-gemachte -
in: Link zu xml-Datei als Download-Link?
geschrieben von tengames
Hallo
ich habe ein Script das für den User eine XML Datei erstellt
diese Datei soll sich der User dann auf seinen PC downloaden
bisher mache ich einfach einen Link zur XML-Datei
mit dem Hinweis: bitte Speichern unter (nicht nur öffnen)
Wie kann ich einen Link so setzen, dass die Datei nicht im Browser geöffnet wird,
sondern gleich der Download-Dialog gestartet wird (geht das überhaupt?)
Ich will aber die Datei nicht ZIPpen, es soll beim User-Client als .xml ankommen
Wie muss ich den <a href="datei.xml" target="_download">Download mich</a> gestalten,
damit das geht? ... gibt es dafür einen target oder brauch ich JS oder was auch immer ?!?
Danke -
in: Titel String als URL (für rewrite) umwandeln ?
geschrieben von tengames
danke
hab ich gleich mal geteste, schon ganz gut
aber leider macht der aus Umlauten ä ö ü ---> NICHTS
schön wäre da jetzt noch ä zu ae und ö zu oe ... usw. (auch Großbuchstaben)
evtl irgendie ins $trans Array mit rein
oder $search und $replace ???
edit:
?!?! ---> wo wird $search überhaupt angewendet, wird zwar definiert, aber dann kein Wort mehr davon ?!
eigentlich wird mit dem Code doch nur das $trans umgesetzt, oder hab ich da was übersehen ?
-
in: Schule oder Ausbildung/Arbeiten
geschrieben von tengames
den coolsten Sprich zum Thema, den ich mal auf Twitter aufgeschnappt habe ist
Schule ist doch eigentlich viel zu mainstream
... was nicht heissen soll, dass das meine Meinung ist, aber hat ein derb cooler Spruch wie ich finde
mal so zum schmunzeln :)
PS: ich selber bin eigentlich bis zum Abi gerne zur Schule gegangen, vorallem die letzen 3 Jahre
-
in: cache-control auf Lima-City
geschrieben von tengames
reimann schrieb:
... eigentlich müsste sogar ein neuer Aufruf der Datei bewirken, dass $wertearray leer ist. ....
sollte, ja .... ist aber bei Lima-City Webspace anscheinend nicht so
mit gleichem Browser auf anderem Hosting klappt es bei mir auch so
nur hier nicht, hier muss ich die arrays "manuell" (im Quellcode) leeren
reimann schrieb:
... Deshalb kann maximal jemand der sich besser auskennt da noch was zu sagen ....
da wird sich sicher eine(r) finden, der/die uns das mal erklären kann ^^
wenn dan hier (Ihr Freaks) :-) -
in: HTML metatag "refresh"
geschrieben von tengames
Hallo
so wie Du es beschreibst,
glaube ich, Du hast das gleiche (oder ein ähnliches) Problem wie ich
hier: http://www.lima-city.de/thread/unterschied-cache-control-und-pragma
... trotz neu-Laden der Seite wird die "alte" Seite angezeigt wird (CACHE)
scheint ein Lima-City Webspace Special zu sein, auf anderen Hostings ist das (bei mir) nicht so
(siehe meinen verlinkten Beitrag)
-
in: Suche alternative zu Notepad++ für html und PHP
geschrieben von tengames
ich kann auch den Editor http://www.pspad.com/de/ sehr empfehlen -
in: Kleinsten Wert imm Array suchen und entfernen
geschrieben von tengames
wenn Zahlen (die kleinste) mehrfach vorkommen, dann hast Du ein Problem ...
ist in deinen Daten nichts anderes als die Zahl (als Wert) ?
wo holst Du das array her? aus MySQL?
kannst Du anstatt oder zusätzlich zur Zahl ein Datim (timestamp) speichern ?!?
edit ... oder: .... ist sowas vielleicht schon in den Daten vorhanden?
-
in: Variablen per Link (unsichtbar) übergeben
geschrieben von tengames
aber mein Vorschlag funktioniert auch dann, wenn der User (Browser) keine SESIONs (oder COOKIEs) zulässt
wobei die meisten es zulassen, also ist die Lösung von alphara schon die wahrscheinlich brauchbarste
-
in: cache-control auf Lima-City
geschrieben von tengames
reimann schrieb:
... Kannst nur mal ein Ticket schreiben oder so.
ein Lima-City Support-Ticket oder anderswo?
willst den Quellcode oder nur die Problem-Beschreibung?
PS: das Problem ist nicht nur im Formular, bei jeder Ausgabe kommen ohne STRG+ F5 (oder ohne unset) die "alten" Daten der Variable im Browser (FF) an.
PS: ich teste mal die alternative zu unset evtl das array "neu" erstellen
mit: $wertearray = array(); befor dem: $wertearray = file($dateiname);
Ergebnis: ja, mit $wertearray = array(); klappt es auch (keine "alten" daten)
ist evtl. schöner als unset ....
-
in: cache-control auf Lima-City
geschrieben von tengames
ich habe es nochmal auf einem anderen Webspace ausprobiert, dort geht es auch mit FF (ohne Cache)
----> habe so den Eindruck, das es irgendwie am Lima-City Webspace liegen könnte ?!
habe jetzt eine (Not-) Lösung für das Problem gefunden:
immer befor neue Daten aus einer .txt Datei gelesen werden
mit $wertearray = file($dateiname);
mache ich unset($wertearray);
... damit gets dann (auch im FF auf Lima)
aber eigentlich sollte es doch auch ohne unset() funktionieren,
die Variable $wertearray wird ja überschrieben (neu gefüllt) ?!
?
-
in: cache-control auf Lima-City
geschrieben von tengames
hallo
Danke, gute Idee
im FF 3.6.16 tritt das problem auf
und im IE8 nicht (da kommen die aktuellen Werte)
(anscheinend) greift cache-control aus Meta-Tags nicht im FF ?
edit:
.......... jetzt bin ich verwirrt , IE kann was besser ?!^^ -
in: cache-control auf Lima-City
geschrieben von tengames
ok, dann ist es vielleicht ja ein php-cache-Problem
also wenn ich den Wert im Formular ändere, dann wird dieser auch korrekt gespeichert
beim erneuen aufruf des (edit) Formulars sollen die Werte ausgelesen und in das Formular geschrieben werden
das klappt auch, sonst würde das Formularfeld ja leer sein, aber steht nicht der aktuell gespeicherte Wert drin,
sondern der vom vorherigen Aufruf, erst mit STRG + F5 kommt der aktuelle Wert
Formular-Aufruf: edit.php?id=12345
dann wird die Datei 12345.txt ausgelesen mit file() und die Werte in Formularfelder geschrieben
bei Speichern wird die .txt neu erstellt mit den neuen (evtl. geänderten) Werten
edi: .... php-cache ausschalten? wie? (htaccess?)
-
in: Variablen per Link (unsichtbar) übergeben
geschrieben von tengames
hallo
Du kannst Dir ja eine Mini-Datenbank (auch als .txt-Datei) anlegen
in der steht der Wert zur Variable, die verfügbar sein soll
also mit php (---> evtl in das php-Forum verschieben ?)
1. bei aufruf der seite1.php die Variable zwischenspeichern, mit fwrite in .txt Datei
2. bei Azfruf der seite2.php die .txt Datei auslesen, um an den gespeicherten Wert zu kommen
sozusagend eine temporäre Datei je User (IP)
seite1.php
$Beispielvariable = "wert oder string"; $userip = $_SERVER['REMOTE_ADDR']; $dateiname = md5($userip); $handle = fopen($dateiname.".txt","w",0666); fwrite($handle,$Beispielvariable); // ---- temporäre Daetei beschreiben fclose($handle);
seite1.php
$userip = $_SERVER['REMOTE_ADDR']; $dateiname = md5($userip); if (file_exists($dateiname.".txt")) { $auslesen = file($dateiname.".txt"); $Beispielvariable = $auslesen[0]; unlink($dateiname.".txt"); // ---- temporäre Datei wieder löschen } echo $Beispielvariable;
das ganze geht auch mit zwischen-speichern in MySQL
vom Prinzip hier das gleiche, den User ermitteln und für diesen den Wert speichern
denn User-IP sollte ja währen der Aktion gleich bleiben, also muss nix übergeben werden
sondern kann ausgelesen werden
edit:
........... bestimmt gibts auch ne Javascript-Lösung
... bzw. mit Cookies ... vielleicht hat jemand dafür auch ein Beispiel
-
in: cache-control auf Lima-City
geschrieben von tengames
Hallo
was ist der Unterschied der folgenden zwei Matatags ?
1.
<meta http-equiv="cache-control" content="no-cache" />
2.
<meta http-equiv="pragma" content="no-cache" />
würde es ein Problem geben, wenn ich beide meta-Tags verwende?
edit:
auch der Einsatz beider TAGs hilft mir nicht weiter ...
ich habe das Problem, wenn ich einen Wert (über Admin Formular) verändere,
dann speichern, zurück zur Liste und dann wieder dieses Edit-Formular aufrufe,
dann steht noch der "alte" Wert im Formular, nichtmal F5 hilft ... nur STRG+F5 hilft ...
.... läuft lima-city über einen Proxy? .... wie stelle ich sicher das aktuelle Werte angezeigt werden?
-
in: Hilfe für php mail funtion
geschrieben von tengames
Ich denke es geht einfach um das absenden einer eMail mit den Werten aus dem Formular
Formular:
... wie oben ...
test.php (einfaches Beispiel)
$sendermail = "deinname@example.org"; // ---- Admin-eMailadresse if ($_POST['submit'] == "Anbsenden") { // ---- email-text ------ $mailinhalt = "Hallo ".$_POST['vorname']." ".$_POST['name']." Der Tolen ist: ".$_POST['token']." Der Port ist: ".$_POST['port']." Viel Spass damit. "; $betreff = "Information zu TS3"; // ---- der eMail Betreff bzw. Titel // ---- email absenden------ if ( mail($_POST['email'],$betreff, $mailinhalt, "From: ".$sendermail.") ) { echo "<br />OK .... die Email wurde gesendet. \n"; } } else { // ---- hier Formular oder andere Ausbage }
aber Achtung, das ist nur ein Beispiel, wie das Prinzip funktioniert (nicht getestet)
edit:
Diesen Beispiel -Code würde ich so nicht verwenden, er soll nur das Prinzip erklären
Wichtig wäre da noch einige Sicherheits-Regeln zu ergänzen (Einfabe filtern, etc)
-
in: Kleinsten Wert imm Array suchen und entfernen
geschrieben von tengames
oder so
$arr = array(5, 1, 3, 2, 4); sort($arr); // --------- Array aufsteigend sortieren ### jetit ist es $arr = array(1, 2, 3, 4, 5); unset($arr[0]); // --------- ersten Wert (= kleinster Wert) aus Array löschen
Ungetestet.
edit: kommen die Werte nur einmalig vor? -
in: Bannertausch Dienste ?
geschrieben von tengames
Hallo
Welche Bannertausch Dienste sind empfehlenswert,
und welche sollte man besser nicht verwenden?
Ich hoffe das mir hier User, die mit sowas erfahrung gemacht haben ein paar Tipps geben können, mit welchen Diensten sie gute Erfahrungen gemacht haben (und welche eher nicht so der Bringer sind)
Bitte nennt nicht nur den Manen der Dienste, sondern gleich mit URL zur Seite
Vielen Dank. -
in: Titel String als URL (für rewrite) umwandeln ?
geschrieben von tengames
Hallo,
ich habe bisher Links im Format
index.php?id=12345
zu jeder $_GET['id'] kann ich einen Titel zuordnen
(Array mit KEY = id (int) und VALUE = der titel für diese id (string)
die Titel kann ich aber nicht so 1:1 als Link-Adresse nehmen,
denn die enhalten u.a. auch Leerzeichen, Sonderzeichen, ...
also der Link soll nicht sein: der%20tite%20f?r%20diese%20id.html
sondern ohne Sonderzeichen: der-titel-fuer-diese-id.html (Leerzeichen als - oder _)
? --> gibt es dazu einen php-Befehl, der mir solche Titel-Strings für URLs brauchbar macht ?
oder muss ich die ungewollten Zeichen alle einzeln ersetzen (mit str_replace oder so)
?