Suche auf lima-city
-
in: Datum aus String herausfiltern
geschrieben von davy
Hi zusammen,
ich habe eine kleine Frage an euch.
Ich habe Strings, die haben folgendes Format:
20220201_blabla
20230101_blablabla
20230201_bla
Also es steht immer vorne das Datum im englischen Format, dann nach einem _ der Name.
Jetzt möchte ich diese beiden Daten filtern. Also ich hätte gerne das Datum, das will ich dann mit strtotime() in einen Timestamp umwandeln, und den Namen möchte ich gerne in meine Datenbank speichern.
Wie mache ich das am besten? Welche Funktionen kann ich für sowas benutzen?
Danke für eure Hilfe. -
in: Ordner aus Verzeichnis anzeigen, nach Datum sortieren
geschrieben von davy
Danke für die Antwort.
Für mein Problem hat es gereicht, einfach eine 1 hinzuzufügen, alsoscandir ( $verz, 1 );
Dann wird alles nach dem Erstelldatum sortiert.
Danke. -
in: Datensätze sortiert nach Jahr ausgeben
geschrieben von davy
duxaquila schrieb:
SELECT * FROM testtabelle WHERE YEAR(SPALTE) == 2022
Sollte meines wissens funktionieren
https://php-einfach.de/mysql-tutorial/mysql-datumfunktion-zeitfunktion/#:~:text=Bei%20DATE_SUB()%20gebt%20ihr,MySQL-Funktion%20NOW()%20erhalten. ist zwar alt sollte aber noch helfen
Danke, aber so hat das leider nicht geklappt.
Ich habs jetzt so gelöst, dass ich eine zusätzliche Spalte "year" in die Datenbank eingefügt habe, wo das Jahr drin steht.
Die Ausgabe mache ich dann mit "WHERE year = 2022" -
in: Ordner aus Verzeichnis anzeigen, nach Datum sortieren
geschrieben von davy
Hallo zusammen,
ich habe hier ein PHP Script, welches mir alle Ordner in einem bestimmten Verzeichnis anzeigt.
$verz = '.'; chdir ( 'fotos/' ); $alledateien = scandir ( $verz ); foreach ( $alledateien as $verzeichnis ) { if (($verzeichnis != '.') && ($verzeichnis != '..') && is_dir ( $verzeichnis )) { echo $verzeichnis; }
Gibt es eine Möglichkeit, die Ausgabe nach dem Erstellungsdatum des Ordners ($verzeichnis) zu sortieren? -
in: Datensätze sortiert nach Jahr ausgeben
geschrieben von davy
Guten Abend zusammen,
ich habe in meiner Datenbank ein Feld "time" mit dem Timestamp eines Datensatzes.
Ich suche nun eine Datenbank Abfrage, die mir alle Datensätze aus einem Jahr (Jahr im Timestamp) anzeigt.
Leider komme ich hier aber nicht weiter. Wie muss meine Abfrage dafür aussehen?
Ich habe schon den Code gefunden, der mir das Jahr ausgibt:date("Y", $timestamp);
Zurzeit werden mir alle Einträge, sortiert nach dem Datum angezeigt. Das klappt schon gut.
SELECT * FROM testtabelle ORDER BY time
Die Ausgabe soll dann in etwa so aussehen:
2022
Eintrag 1
Eintrag 2
...
2021
Eintrag 1
Eintrag 2
...
2020
...
Hat jemand eine Idee für mein Problem? -
in: 13-stellige Zahlen aus Text filtern
geschrieben von davy
Hallo,
ich möchte aus einem Text 13-stellige Zahlenfolgen herausfiltern.
Beispiel:
blabla1234567890123blabla2345678901234
Dafür habe ich mir folgenden Code gebastelt:
<?php $str = $_POST['text']; $pattern = '/[0-9]{13}/'; preg_match($pattern, $str, $matches); $anzahl = count ( $matches ); for ($x = 0; $x < $anzahl; $x++) { echo $matches . "<br />"; } ?>
Das mit der for-schleife funktioniert noch nicht. Wie muss ich meinen Code anpassen, damit das Skript mir alle 13-stelligen Zahlenkombinationen untereinander ausgibt? -
in: Frage zu PHP Preg_Replace
geschrieben von davy
Klappt wunderbar.
Danke. -
in: Frage zu PHP Preg_Replace
geschrieben von davy
witze-dschungel schrieb:
davy schrieb:
Ich möchte alle Groß-und Kleinbuchstaben, Zahlen, Unterstriche, Bindestriche und das Zeichen "/" erlauben.
Wie passe ich meinen Code an?
Habe den Regex etwas angepasst, dass er auch deiner Beschreibung entspricht:
$dir = preg_replace('/[^a-zA-Z0-9_\/-]+/', '', htmlentities($_GET["dir"]));
Durch das "+" sollte er auch bei mehreren Sonderzeichen funktionieren.
Danke, funktioniert super.
Ich habe noch ein weiteres Problem:
Der Code:
$dir = preg_replace('/[^a-zA-Z0-9\\/_]/', '', htmlentities($_GET["dir"]));
erstellt beispielsweise die Ausgabe
Hauptverzeichnis/Unterverzeichnis1/Unterverzeichnis2
Wie kann ich das letzte Verzeichnis (Unterverzeichnis2) löschen, sodass nur noch "Hauptverzeichnis/Unterverzeichnis1" übrig bleibt?
Ich brauche diese Funktion, um einen Link zu erstellen, um einen Ordner zurück zu gehen.
Geht sowas überhaupt in PHP? Oder wie könnte man sowas sonst realisieren?
EDIT:
Soweit bin ich schon
strstr($dir,"/", TRUE);
In $dir ist "Hauptverzeichnis/Unterverzeichnis1/Unterverzeichnis2" gespeichert. Problem ist, dass jedes "/" gelöscht wird. Ich möchte ja nur das letzte jeweils löschen. Kann man die Anzahl angeben? -
in: Frage zu PHP Preg_Replace
geschrieben von davy
Hallo,
ich habe eine Frage zur Funktion Preg_Replace, bei der ich nicht weiter komme.
Das ist meine Codezeile:
$dir = preg_replace('/[^a-zA-Z0-9_]/', '', htmlentities($_GET["dir"]));
Ich möchte alle Groß-und Kleinbuchstaben, Zahlen, Unterstriche, Bindestriche und das Zeichen "/" erlauben.
Wie passe ich meinen Code an?
Danke schonmal für eure Hilfe! -
in: Dateien aus Ordner nach Datum sortiert ausgeben
geschrieben von davy
Hallo,
ich möchte hochgeladene Dateien aus einem Ordner ausgeben. Dabei soll die Ausgabe auf die 5 neuesten Dateien begrenzt werden. Also muss die neueste Datei oben stehen. Wie klappt die Sortierung nach dem Änderungsdatum? Zurzeit sortiere ich nach A-Z.
Das ist mein bisheriger Code:
// Ordnername $ordner = "upload"; // Ordner auslesen und Array in Variable speichern $alledateien = scandir($ordner); // Sortierung A-Z $i=1; // Schleife um Array "$alledateien" aus scandir Funktion auszugeben // Einzeldateien werden dabei in der Variabel $datei abgelegt foreach ($alledateien as $datei) { // Zusammentragen der Dateiinfo $dateiinfo = pathinfo($ordner."/".$datei); $datum = date (" d.m.Y", filemtime($ordner."/".$datei)); if ($datei != "." && $datei != ".." && $datei != "_notes" && $i<=5) { echo ' <div class="dateilink"> <a href="index.php?file=upload/' . $dateiinfo['basename'] . '">' . $dateiinfo['basename'] . '</a></div><div class="datum">' . $datum . '</div><br>'; $i++; } }
EDIT: Ich habe es schon alleine geschafft. -
in: PDF-Dateien bearbeiten Programm
geschrieben von davy
burgi schrieb:
Gerade das "nur den Text ändern können" ist eine Disziplin, welches nur sehr wenige Programme einfach mal so können, kostenlose kenne ich gar keine. Ich verwende für kleine Änderungen den PDF XChange Viewer, downloadbar hier. Mit dem kannst du neue Textboxen über den bestehenden Text legen und andere Kleinigkeiten erledigen. Den Text als Fließtext bearbeiten kannst du allerdings nicht!
Achso, okay. Dachte Text ändern können die meisten :)
Naja, schau ich mir den XChange Viewer mal an
Danke! -
in: PDF-Dateien bearbeiten Programm
geschrieben von davy
Hallo,
ich suche ein kostenloses Freeware Programm, mit dem ich PDFs bearbeiten kann.
Das Programm muss Text bearbeiten können, ansonsten muss es nicht viel können.
Könnt Ihr mir ein kostenloses Programm empfehlen? Ich hab schon im Internet gesucht, aber noch nichts gefunden, was ich gesucht habe. -
in: Suche günstigen TV Festplattenrekorder
geschrieben von davy
Hallo,
ich suche ein Gerät, mit dem ich Fernsehprogramme aufnehmen kann. Also einen Festplatten-Rekorder.
Ich habe mal geschaut, was die so kosten. Ist mir allerdings ein bisschen zu teuer.
Gibt es kleinere Geräte, die evtl. kein DVD oder Blu-Ray Laufwerk eingebaut haben?
Ich brauche ja eigentlich nur ein Gerät, welches das Fernsehprogramm auf eine Festplatte aufnimmt.
Auch sollten die Aufnahmen auf den PC übertragen werden können.
Ich nutze als Fernseher einen Sony Bravia mit Kabelfernsehen.
Was könnt Ihr mir empfehlen? -
in: Toshiba Externe Festplatte wird nicht angezeigt
geschrieben von davy
burgi schrieb:
Ich würde dazu mal in die Verwaltung gehen -> Computerverwaltung, und dort in die Datenträgerverwaltung. Dort snid sämtliche Volumes angezeigt. Vielleicht wird der HDD ja bloß kein Laufwerksbuchstabe zugeordnet, was du dort erledigen kannst, indem du rechts auf den zugewiesenen Speicher klickst, und dann Laufwerksbuchstabe zuordnen.
Danke, das hat geholfen ;)
Ich hab einen Buchstaben vergeben, und jetzt kann ich drauf zugreifen -
in: Toshiba Externe Festplatte wird nicht angezeigt
geschrieben von davy
Hallo,
ich habe ein Problem.
Heute habe ich meine neue externe Festplatte 1 TB von Toshiba bekommen.
Sofort habe ich sie an meinen Windows 7 PC angeschlossen, aber auch nach einigen Versuchen wurde sie nicht unter Arbeitsplatz angezeigt. Allerdings wird sie im Gerätemanager einwandfrei erkannt.
An der Festplatte kann es nicht liegen, denn auf meinem Mac Book funktioniert alles einwandfrei.
Also nur unter Windows 7 eben nicht.
Was kann man da machen? -
in: Kaufempfehlung für Tablet Windows 8
geschrieben von davy
Hallo !
Ich suche ein Tablet, welches als Betriebssystem Windows 8 nutzt. Wichtig ist, es soll kein Windows RT, Android oder iOS sein. Als Preisgrenze habe ich mir 500 Euro gesetzt.
Als Favoriten habe ich bisher die beiden Tablets Asus Vivo Tab Smart ME400C und den Samsung Ativ Smart PC 500T1C-A01DE.
Könnt Ihr mir bei meiner Entscheidung helfen? Es kann auch ein anderes Tablet sein, als die beiden genannten, wenn es ein besseres gibt.
Mit dem Tablet möchte ich hauptsächlich im Internet surfen oder Office nutzen. Ein paar Filme schauen sollte es auch können. -
in: Timestamp errechnen PHP
geschrieben von davy
software-brosch schrieb:
Mit dem folgenden Code sollte es gehen:
strtotime('+1 day', $timestamp);
Quelle: http://stackoverflow.com/a/2515070
Gruß S. Brosch
Danke! Es funktioniert -
in: Timestamp errechnen PHP
geschrieben von davy
Hallo!
Ich muss einen Cron, der täglich um 19 Uhr ausgeführt wird, so programmieren, dass der Timestamp vom darauffolgenden Tag 19:00 (also nach 24 Stunden) in die DB gespeichert wird.
Wie errechne ich diesen Timestamp am besten, auch unter der Berücksichtigung von Sommerzeit/Winterzeit? -
in: Datensätze der letzten 24 Stunden ausgeben PHP
geschrieben von davy
Okay, danke für eure Antworten!
Habe mein Problem gelöst . -
in: Datensätze der letzten 24 Stunden ausgeben PHP
geschrieben von davy
n0tiert schrieb:
davy schrieb:
limabone schrieb:
Hallo
mittels
geht das. Wobei die Spalte `time` den Dateityp DATETIME haben sollte.SELECT * FROM `db_xxxxxx_1` WHERE `time` > DATE_SUB(DATE(NOW()), INTERVAL 24 HOUR); SELECT * FROM `db_xxxxxx_1` WHERE `time` > DATE_SUB(DATE(NOW()), INTERVAL 7 DAY); SELECT * FROM `db_xxxxxx_1` WHERE `time` > DATE_SUB(DATE(NOW()), INTERVAL 30 DAY);
Grüße
Das geht aber nur, wenn es das Format d-m-y gibt, oder?
Ich habe einen Timestamp im Feld. Wie geht das damit?
In meiner User Tabelle habe ich ja auch nur den letzten Eintrag eines Users.
Dann brauche ich noch eine Tabelle, oder? Wie würdet ihr das machen?
welches format hast du den als result , date-time timestamps oder unix timestamps ?
Als Beispiel habe ich sowas: 1368229333
also unix timestamp wahrscheinlich -
in: Datensätze der letzten 24 Stunden ausgeben PHP
geschrieben von davy
limabone schrieb:
Hallo
mittels
geht das. Wobei die Spalte `time` den Dateityp DATETIME haben sollte.SELECT * FROM `db_xxxxxx_1` WHERE `time` > DATE_SUB(DATE(NOW()), INTERVAL 24 HOUR); SELECT * FROM `db_xxxxxx_1` WHERE `time` > DATE_SUB(DATE(NOW()), INTERVAL 7 DAY); SELECT * FROM `db_xxxxxx_1` WHERE `time` > DATE_SUB(DATE(NOW()), INTERVAL 30 DAY);
Grüße
Das geht aber nur, wenn es das Format d-m-y gibt, oder?
Ich habe einen Timestamp im Feld. Wie geht das damit?
In meiner User Tabelle habe ich ja auch nur den letzten Eintrag eines Users.
Dann brauche ich noch eine Tabelle, oder? Wie würdet ihr das machen? -
in: Datensätze der letzten 24 Stunden ausgeben PHP
geschrieben von davy
Hallo !
Ich möchte Datensätze in meiner Datenbank zählen. Dabei will ich 3 verschiedene Ausgaben haben ( letzte 24std / letzte 7 tage / letzte 30 tage ).
Damit will ich Einträge von Usern zählen.
Zurzeit werden diese Einträge nur in einer Usertabelle gespeichert.
Ungefähr so
User|Einträge
xxxxx|5
Wie würdet Ihr die Einträge der letzten 24 std. / 7 tage / 30 tage ausgeben?
Ich habe keine Idee, wie ich das realisieren könnte. -
in: PHP-Anzeige Sie sind hier...
geschrieben von davy
reimann schrieb:
Also als Tipp: Das nennt sich Breadcrumbs bzw. Brotkrumen:
http://de.wikipedia.org/wiki/Brotkr%C3%BCmelnavigation
Codebeispiele gibt es jede Menge siehe:
http://www.drweb.de/magazin/breadcrumb-navigation-mit-php/
Danke,da werde ich mal schauen -
in: BB Code Problem Forum PHP
geschrieben von davy
hcms schrieb:
nun das ist doch dort (http://www.christian-seiler.de/projekte/php/bbcode/doc/de/kapitel2.php#einbinden) bestens beschrieben, sogar auf deutsch...
Danke, das habe ich garnicht gefunden. -
in: BB Code Problem Forum PHP
geschrieben von davy
Von dieser fertigen Klasse habe ich auch schon gehört, aber hatte Probleme damit, diese bei mir einzubauen.
Wie muss ich diese denn genau einbauen?
Ist das einfach eine Klasse, der ich meinen BBCode einfach übergeben muss? -
in: BB Code Problem Forum PHP
geschrieben von davy
Hallo,
ich bin gerade dabei, ein Forum in PHP zu programmieren.
Mein Problem ist bei den BB Codes. Diese Methode benutze ich für die BB Code Umwandlung in HTML.
Der Text vom Benutzer wird in $bbcode übermittelt:
function bb_codes($bbcode) { $bbcode = htmlentities ( $bbcode ); /* Bold text */ $match ["b"] = "/\[b\](.*?)\[\/b\]/is"; $replace ["b"] = "<b>$1</b>"; /* Italics */ $match ["i"] = "/\[i\](.*?)\[\/i\]/is"; $replace ["i"] = "<i>$1</i>"; /* Underline */ $match ["u"] = "/\[u\](.*?)\[\/u\]/is"; $replace ["u"] = "<span style=\"text-decoration: underline\">$1</span>"; /* Typewriter text */ $match ["tt"] = "/\[tt\](.*?)\[\/tt\]/is"; $replace ["tt"] = "<span style=\"font-family:monospace;\">$1</span>"; ...... /* Parse */ $bbcode = preg_replace ( $match, $replace, $bbcode ); $bbcode = nl2br ( $bbcode ); $bbcode = preg_replace_callback ( "/\[code\](.*?)\[\/code\]/ism", "pre_special", $bbcode ); //Emoticons einfügen $bbcode = emoticons ($bbcode); /* Remove <br> tags before quotes and code blocks */ //$bbcode = str_replace ( "<br />", "", $bbcode ); //$bbcode = str_replace ( "", "", $bbcode ); //Clean up any special characters that got misplaced... return $bbcode; } function pre_special($matches) { $prep = preg_replace ( "/\<br \/\>/", "", $matches [1] ); return "<table border='0' style='width:98%; table-layout: fixed;'><pre><code>$prep</code></pre></table>"; }
Mit der Methode emoticons() ersetze ich die Emoticon Codes in die entsprechenden Grafiken (<img src="..">)
Mein Problem:
Der Code innerhalb von [ code ] und [ /code ] soll NICHT verändert werden durch die Methode emoticons().
Außerhalb dieser [code] Tags aber natürlich schon.
Wie kann ich das realisieren?
Mir fällt nicht ein, wie ich das machen kann.
Könnt Ihr mir helfen? -
in: PHP-Anzeige Sie sind hier...
geschrieben von davy
Hallo,
ich suche ein PHP Script, welches mir auf meiner Webseite folgende Anzeige anzeigt:
Beispiel:
Sie sind hier: Startseite > Forum > ...
Wie kann ich sowas realisieren?
Ich habe schon im Internet gesucht, aber nichts passendes gefunden.
Könnt Ihr mir helfen? -
in: Problem mit Xampp Webserver
geschrieben von davy
czibere schrieb:
davy schrieb:
ok. wenn das also windows ist, dann möchte ich noch die meldung von dem da
...
(also jetzt ist exit schon früher.)<?php // WICHTIG define('NEW_CODE', 'off'); // 'on' oder 'off' // Constants define('DIR_ROOT', '\xampp\htdocs\davidlohmann\'); exit(''.(int)is_dir(DIR_ROOT)); define('DIR_INC', DIR_ROOT .'inc/'); define('DIR_CLASS', DIR_INC .'class/'); define('DIR_JS', DIR_INC .'js/'); ...
Da wird eine "1" ausgegeben... -
in: Problem mit Xampp Webserver
geschrieben von davy
czibere schrieb:
davy schrieb:
und außerdem; ist jetzt dein xampp auf windows oder linux installiert???? von all deinen postings oben ist momentan unklar!
czibere schrieb:
davy schrieb:
das ist reichlich doof! dazu sehe ich überhaupt keinen anlass! zeige bitte von der datei alle zeilen bis zum neulich eingefügtem exit(... [also die ca. ersten 10 zeilen]
... Da kommt dieser Fehler:
Die Zeile 7 ist diese:Parse error: syntax error, unexpected 'DIR_INC' (T_STRING) in C:\xampp\htdocs\davidlohmann\inc\config.php on line 7
define('DIR_INC', DIR_ROOT .'inc/');
Ich poste hier mal die ersten paar Zeilen:
<?php // WICHTIG define('NEW_CODE', 'off'); // 'on' oder 'off' // Constants define('DIR_ROOT', '\xampp\htdocs\davidlohmann\'); define('DIR_INC', DIR_ROOT .'inc/'); exit(''.DIR_INC); define('DIR_CLASS', DIR_INC .'class/'); define('DIR_JS', DIR_INC .'js/'); ...
EDIT: Danke copynpaste, jetzt wird beim exit
\xampp\htdocs\davidlohmann\inc/
ausgegeben.
die alte installation sieht nach linux aus, die neue - weiter oben - nach windows, aber jetzt neulich doch wieder nach linux! was nun?
Nein, kein Linux
Ich benutze dafür Windows 7
Ich glaube, es geht jetzt. Gerade geht irgendwie der Mysql Server nicht mehr. Nachdem ich auf Starten klicke, bricht er ab. Also da steht dann nach 2-3 Sekunden wieder Starten. -
in: Problem mit Xampp Webserver
geschrieben von davy
czibere schrieb:
davy schrieb:
das ist reichlich doof! dazu sehe ich überhaupt keinen anlass! zeige bitte von der datei alle zeilen bis zum neulich eingefügtem exit(... [also die ca. ersten 10 zeilen]
... Da kommt dieser Fehler:
Die Zeile 7 ist diese:Parse error: syntax error, unexpected 'DIR_INC' (T_STRING) in C:\xampp\htdocs\davidlohmann\inc\config.php on line 7
define('DIR_INC', DIR_ROOT .'inc/');
Ich poste hier mal die ersten paar Zeilen:
<?php // WICHTIG define('NEW_CODE', 'off'); // 'on' oder 'off' // Constants define('DIR_ROOT', '\xampp\htdocs\davidlohmann\'); define('DIR_INC', DIR_ROOT .'inc/'); exit(''.DIR_INC); define('DIR_CLASS', DIR_INC .'class/'); define('DIR_JS', DIR_INC .'js/'); ...
EDIT: Danke copynpaste, jetzt wird beim exit
\xampp\htdocs\davidlohmann\inc/
ausgegeben.
-
in: Problem mit Xampp Webserver
geschrieben von davy
czibere schrieb:
davy schrieb:
gib mal nach define('DIR_INC',...
... config.php ...:define('DIR_ROOT', 'C:\xampp\htdocs\davidlohmann\'); define('DIR_INC', DIR_ROOT .'inc/'); ...
exit(''.DIR_INC);
ein und sag es uns was ausgegeben wird.
davy schrieb:
trotz abweichungen dürfte es in ordnung sein.
... Da bin ich mir aber nicht sicher, was bei root stehen soll. ...
Ich habe es jetzt so in der config stehen:
define('DIR_ROOT', '\xampp\htdocs\davidlohmann\'); define('DIR_INC', DIR_ROOT .'inc/'); exit(''.DIR_INC);
Da kommt dieser Fehler:
Parse error: syntax error, unexpected 'DIR_INC' (T_STRING) in C:\xampp\htdocs\davidlohmann\inc\config.php on line 7
Die Zeile 7 ist diese:define('DIR_INC', DIR_ROOT .'inc/');
-
in: Problem mit Xampp Webserver
geschrieben von davy
hackyourlife schrieb:
Der Fehler liegt hier:
Du nutzt eine KonstanteNotice: Use of undefined constant DIR_INC - assumed 'DIR_INC' in C:\xampp\htdocs\davidlohmann\inc\init.php on line 3
, die du aber anscheinend nicht definiert hast. Wenn du sie definierst wird das auch auf dem XAMPP funktionieren.DIR_INC
davy schrieb:
Woher kommt die?
Kurz zur Erklärung: DIR_INC ist eine Konstante, die die URL enthält
davy schrieb:
Nein, die Funktion kennt er, nur findet er die Datei nicht, die du includieren willst.
XAMPP scheint wohl die include_once() Funktion nicht zu kennen, oder?
Also, in der Datei init.php wird eine config.php aufgerufen, das sieht so aus:
<?php include_once 'inc/config.php'; include_once DIR_INC . 'debug.php'; ...
In der config.php werden dann die Konstanten definiert. So sieht das aus:
define('DIR_ROOT', 'C:\xampp\htdocs\davidlohmann\'); define('DIR_INC', DIR_ROOT .'inc/'); ... define('DIR_HTML', 'localhost/davidlohmann/'); define('DIR_CSS', DIR_HTML . 'css/');
Da bin ich mir aber nicht sicher, was bei root stehen soll.
Auf meinem bisherigen Server stand das so da:
define('DIR_ROOT', '/home/www/web48/html/'); define('DIR_INC', DIR_ROOT .'inc/'); ... define('DIR_HTML', 'http://davidlohmann.de/'); define('DIR_CSS', DIR_HTML . 'css/');
-
in: Problem mit Xampp Webserver
geschrieben von davy
Hi,
ich habe mir heute einen XAMPP Webserver lokal auf meinem Rechner installiert, um meine Webseite zu testen.
Folgendes Problem habe ich:
Beim Aufruf meiner Seite erhalte ich aber viele Fehlermeldungen
Auf meinem Webserver im Internet funktioniert genau die gleiche Seite aber ohne Probleme.
Die Fehlermeldungen:
Notice: Use of undefined constant DIR_INC - assumed 'DIR_INC' in C:\xampp\htdocs\davidlohmann\inc\init.php on line 3 Warning: include_once(DIR_INCdebug.php): failed to open stream: No such file or directory in C:\xampp\htdocs\davidlohmann\inc\init.php on line 3 Warning: include_once(): Failed opening 'DIR_INCdebug.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\davidlohmann\inc\init.php on line 3 Notice: Use of undefined constant DIR_INC - assumed 'DIR_INC' in C:\xampp\htdocs\davidlohmann\inc\init.php on line 6 Warning: include_once(DIR_INCdatum.php): failed to open stream: No such file or directory in C:\xampp\htdocs\davidlohmann\inc\init.php on line 6 Warning: include_once(): Failed opening 'DIR_INCdatum.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\davidlohmann\inc\init.php on line 6 Notice: Use of undefined constant DIR_INC - assumed 'DIR_INC' in C:\xampp\htdocs\davidlohmann\inc\init.php on line 8 Warning: include_once(DIR_INCnavigation_bar.php): failed to open stream: No such file or directory in C:\xampp\htdocs\davidlohmann\inc\init.php on line 8 Warning: include_once(): Failed opening 'DIR_INCnavigation_bar.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\davidlohmann\inc\init.php on line 8 Notice: Use of undefined constant DIR_INC - assumed 'DIR_INC' in C:\xampp\htdocs\davidlohmann\inc\init.php on line 26 Warning: include_once(DIR_INCclass/AbstractSQL.class.php): failed to open stream: No such file or directory in C:\xampp\htdocs\davidlohmann\inc\init.php on line 26 Warning: include_once(): Failed opening 'DIR_INCclass/AbstractSQL.class.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\davidlohmann\inc\init.php on line 26 Fatal error: Class 'AbstractSQL' not found in C:\xampp\htdocs\davidlohmann\inc\init.php on line 11
XAMPP scheint wohl die include_once() Funktion nicht zu kennen, oder?
Kurz zur Erklärung: DIR_INC ist eine Konstante, die die URL enthält
Der Webserver funktioniert aber, ich habe einige Tests mit echo gemacht.
An der PHP Version kann es auch nicht liegen, die Version auf XAMPP ist neuer als die auf dem Webserver im Internet.
Habt ihr eine Idee, woran das liegen könnte? -
in: PHP Unterverzeichnisse eines Verzeichnisses ausgeben
geschrieben von davy
Danke für die vielen Antworten!
Jetzt funktioniert alles ! :)
EDIT: Ich merke gerade, dass mir nicht die Ordner vom aktuellen Ordner angezeigt werden, sondern von dem davor.
Wie kann ich das ändern?
Das Script:
<select name="ordner"> <?php $alledateien = scandir('.'); foreach ($alledateien as $verzeichnis) { // Ausgabeschleife if(($verzeichnis != '.') && ($verzeichnis != '..') && is_dir($verzeichnis)) { $verzeichnis = htmlentities($verzeichnis); echo("<option value=\"$verzeichnis\">$verzeichnis</option>"); //Ausgabe Einzeldatei } } ?> </select>
-
in: PHP Unterverzeichnisse eines Verzeichnisses ausgeben
geschrieben von davy
syberpsace schrieb:
Dass es nicht funktioniert ist wohl offensichtlich, sonst hättest du nicht hier nach Hilfe gefragt. Wenn du uns jetzt dann noch gütigerweise mitteilst, WAS nicht funktioniert, kann dir eventuell auch jemand weiterhelfen.
Mfg
Also, es werden keine Verzeichnisse ausgegeben (nichts wird ausgegeben).
Aber ich will ja, dass der Inhalt vom aktuellen Verzeichnis in das Select Feld ausgegeben wird. -
in: PHP Unterverzeichnisse eines Verzeichnisses ausgeben
geschrieben von davy
Hallo,
ich habe mal wieder ein Problem.
Ich will in einer Select Liste, alle Unterverzeichnisse im aktuellen Verzeichnis (also wo das Script liegt) ausgeben lassen.
Dazu habe ich mir diesen Code zusammengesucht, aber er funktioniert noch nicht:
<select name="ordner"> <?php $verz = '/home/www/web48/html/test/'; $alledateien = scandir ( $verz ); foreach ( $alledateien as $verzeichnis ) { // Ausgabeschleife if ($verzeichnis != "." && $verzeichnis != ".." && is_dir ( $verzeichnis ) == true) { echo '<option value="' . $verzeichnis . '">' . $verzeichnis . '</option>'; //Ausgabe Einzeldatei } } ; ?> </select>
Könnt Ihr mir helfen?
Das Script soll nur Verzeichnisse ausgeben, keine Dateien. -
in: PHP Multiupload funktioniert nicht
geschrieben von davy
fatfreddy schrieb:
davy schrieb:
. Das Verzeichnis $ordnername existiert.
Die Fehlermeldung besagt etwas anderes.
Es mag sein, daß Du einen entsprechenden Ordner angelegt hast. Liegt der aber auch, bezogen auf den Speicherort des Skriptes, an der richtigen Stelle und ist beschreibbar?
$ordnername="ordner" -> der ordner wird im gleichen Verzeichnis, wie das uploadskript gesucht
$ordnername="/ordner" -> der Ordner wird im document-root.gesucht
EDIT: Fehlerhafte Schreibrechte sind auszuschließen, denn dann wäre die erste Meldung ein "permission denied".
Priinzipiell ist das Uploadscript weder schön, noch übersichtlich, aber zumindest frei von schwerwiegenden (!) Fehlern.
Gerade per Copy>Paste erfolgreich getestet.
.
Entspricht dein Codeschnipsel wirklich genau dem ausgeführten Script? Ich vermag es nicht zu glauben, denn dann wäre das action='?page=bilderupload'" absolut sinnlos und das Formular würde unbenötigterdings auch wieder gezeigt..
Danke für deine Antwort !
Der $ordnername liegt an der richtigen Stelle, also in dem Ordner, wo auch das Uploadskript liegt.
Ich finde das Skript auch nicht so schön, hast du ein besseres für mich?
Die Action = '?page=bilderupload' verweist auf das Upload Formular. In der selben Datei befindet sich auch der PHP Code für den Upload. -
in: PHP Multiupload funktioniert nicht
geschrieben von davy
Hallo,
ich habe ein Script, mit dem ich mehrere Bilder auf meinen Server hochladen kann.
Ein Ordnername wird übergeben, wo die Bilder rein gespeichert werden sollen.
Der Code:
<form action="?page=bilderupload" method="post" enctype="multipart/form-data"><input name="uploads[]" type="file" multiple><br /> <br /> <b>Ordnername:</b> <input type="input" name="name" id="name"><br /> <br /> <input type="submit" value="Dateien hochladen" name="submit"></form> <?php if ($_POST ['submit']=='Dateien hochladen') { if($_POST['name'] == "") { echo 'Bitte gib einen Ordnernamen an!'; $fehler = true; } if (!$fehler) { // Erlaubte Dateiendungen $allowedExtensions = array('png', 'jpg', 'jpeg', 'JPG'); // Maximale Größe der Datei $maxSize = 2097152; // Hilfsvariable für Array Index $i = 0; foreach($_FILES as $file) : foreach($file['name'] as $filename) : $extension = getExtension($filename); if(!in_array($extension, $allowedExtensions)) { echo 'Keine erlaubte Endung: ', $filename; ++$i; // Datei überspringen falls Endung nicht erlaubt continue; } if($file['size'][$i] > $maxSize) { echo 'Datei zu groß'; ++$i; continue; } // Eindeutiger Dateiname $save_as_name = uniqid().'_'.$filename; //Ordnername $ordnername = $_POST['name']; // Datei auf Server speichern move_uploaded_file($file['tmp_name'][$i], "$ordnername/$save_as_name"); ++$i; endforeach; endforeach; echo '<b><center>Erfolg!</center></b>'; } } function getExtension($name) { return (false === ( $p = strrpos($name, '.') ) ? '' : substr($name, ++$p)); } ?>
Der Code funktioniert aber irgendwie noch nicht.
Laut Fehlermeldung ist in der Zeile, wo die Funktion move_uploaded_file() aufgerufen wird, ein Fehler.
Da finde ich aber keinen Fehler. Das Verzeichnis $ordnername existiert.
Die Fehlermeldungen:
Warning: move_uploaded_file(ordner/50661502e2953_DSC09886.JPG) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/www/html/upload.php on line 52 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/home/www/phptmp/phpM4FmQE' to 'ordner/50661502e2953_DSC09886.JPG' in /home/www/html/upload.php on line 52
Könnt Ihr mir helfen? -
in: Android Smartphone
geschrieben von davy
hk1992 schrieb:
Nenn doch mal einen Preisrahmen, den du ausgeben willst, denn das ist wohl ein wichtiges Kriterium. Android-Phones mit Kamera gibt es wie Sand am Meer. Kompakte Abmessungen ist auch nicht sehr präzise, ich gehe davon aus, dass dir das Samsung Galaxy S3 also zu groß ist? Wo liegt das Maximum? Die HTC One Reihe hat mehrere Ausführungen in verschiedenen Größen, vielleicht schaust du da mal rein.
Also, der Preis sollte nicht höher als 400 € sein, mit kompakten Abmessungen meine ich eher nicht so wie das Galaxy S3. -
in: Android Smartphone
geschrieben von davy
Hallo,
ich möchte mir bald ein neues Smartphone kaufen. Allerdings weiß ich noch nicht genau, welches.
Als Betriebssystem soll es Android haben. Eine Kamera soll es auch haben.
Die Abmessungen sollen eher kompakt sein.
Könnt Ihr mir vielleicht ein gutes Smartphone empfehlen? Die Marke ist erstmal egal. -
in: Letzte 3 Monate anzeigen mit Daten PHP
geschrieben von davy
syberpsace schrieb:
Dann ist enddate eben nicht der heutige Tag sonder immer der letzte des Monats.
Hmm, ja probiere ich mal
Wie ist dann der Code für Start und Ende?
So hatte ich das schon, aber ist noch nicht richtig
$start=mktime(0,0,0,$month, 1, $year); $stop=mktime(0,0,0,$month, 31, $year);
EDIT: Das Problem konnte ich selber lösen. Danke für die Hilfe! -
in: Letzte 3 Monate anzeigen mit Daten PHP
geschrieben von davy
Ja, das könnte ich so machen
Aber ich will die Summe der drei Monate getrennt ausgeben in einer Tabelle, also in etwa so:
<table> <tr> <td>April</td> <td>summe</td> </tr> <tr> <td>Mai</td> <td>summe</td> </tr> <tr> <td>Juni</td> <td>summe</td> </tr>
-
in: Letzte 3 Monate anzeigen mit Daten PHP
geschrieben von davy
Hallo,
ich habe folgendes Problem
Ich habe eine Datenbanktabelle mit einer Spalte "time", die den Timestamp beinhaltet.
Ich möchte eine Tabelle mit dem aktuellen Monat und 2 davor, also z.B. Juni, Mai, April.
Daneben soll dann die Summe ausgegeben werden. Dazu benutze ich diese Abfrage:
SELECT SUM(gewinn_verlust) as summe from r_tage
da fehlt nur noch die WHERE Bedingung
Ich habe es schon mit einer Schleife versucht, aber nicht wirklich weit gekommen.
<?php $months = array(); $months = array("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); for ($i = 0; $i > 3; $i++) { //Wochenstatistik $month = date(m); $year = date(Y); $start=mktime(0,0,0,$month, 1, $year); $stop=mktime(0,0,0,$month, 31, $year); $query = "SELECT SUM(gewinn_verlust) as summe from r_tage"; $res = $abstract->query ( $query ); $row = $abstract->fetchRow ( $res ); $summe = $row ['summe']; //Monatzahl $monatzahl = $month - $i; echo '<li><div class="myStat">'; if ($summe > 0) { echo '<strong style="color:green">+ ' . number_format ( $summe, '', '', '.' ) . '</strong>'; } elseif ($summe < 0) { echo '<strong style="color:red">' . number_format ( $summe, '', '', '.' ) . '</strong>'; } echo '</div>' . $months[$monatzahl] . '-' . $year . '</li>'; } ?>
Könnt Ihr mir helfen? -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
tobiworlds schrieb:
Deine ifs und fors sind nicht richtig implementiert, oder?
Da fehlt immer die umschließende Klammer...
Ich glaube schon.
auf einer anderen seite von mir sind die auch so, und da geht es.
Ich schau dann halt morgen nochmal drüber, aber schonmal danke für deine Hilfe! :D -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
tobiworlds schrieb:
Dann habe ich leider auch keine Ahnung, aber Du hast auch noch mehr verändert, oder?
Ich habe versucht alles an die Seite anzupassen, du kannst ja nochmal drüberschauen.
Den Link hab ich dir geschickt.
Ich sehe jetzt auch keinen Fehler mehr. -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
tobiworlds schrieb:
Für diesen Code benötigst Du jQuery, was Du aber nicht eingebunden hast.
Wenn Du das verwenden würdest, müsste eigentlich alles funktionieren.
Also binde noch in deinen Head ein:
.<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
Da tut sich leider immer noch nichts.
Ist noch was am Code falsch? -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
tobiworlds schrieb:
Das viele Javascript-Befehle vereinfacht werden würden.
Du kannst Dich ja hier mal kurz über jQuery informieren: jquery.org.
Du würdest einfach diese Zeile ändern:
.echo '<div class="day_box" id=" ' . $id . ' ">
Mit jQuery würde der Code dann wie folgt aussehen:
<script type="text/javascript"><!-- var elemente = ['einsaetze', 'einnahmen']; // hier gehören die Element-IDs rein function toggleAll(id) { for(var i = 0; i < elemente.length; i++) $('#'+id).find(elemente[i]).toggle(); } // --></script>
Ich habe es nicht getestet, müsste aber so funktionieren...
Ich habe den Javascript Code jetzt so:
<script type="text/javascript"><!-- var elemente = ['einsaetze', 'einnahmen']; // hier gehören die Element-IDs rein function toggleElement(id) { var element = document.getElementById(id); if(element.style.display == 'none') element.style.display = ''; // oder 'block' ... else element.style.display = 'none'; } function toggleAll(id) { for(var i = 0; i < elemente.length; i++) $('#'+id).find(elemente[i]).toggle(); } // --></script>
und die Boxen jeweils so:<div class="day_box" id=" ' . $id . ' ">
Aber jetzt tut sich jetzt garnichts mehr beim Klick auf die Links.
Ist im Code irgendwo ein Fehler drin? -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
tobiworlds schrieb:
Nutzt Du jQuery? Das würde die Sache vereinfachen...
Nein, was wäre denn der Vorteil? -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
tobiworlds schrieb:
Ich denke, die beste Lösung ist mit IDs für Deine Boxen.
Dann übergibst Du die ID in der Funktion toggleAll() und führst sie dann genau für dieses Element aus.
Ja, hab ich mir schon gedacht
Wie muss der Javascript Code aussehen?
Der Link in der Schleife muss dann so aussehen:
<a href="#" onclick="toggleAll(' . $id . ');">Eingabefelder einblenden</a>
oder? -
in: Javascript toggle mit PHP While Schleife
geschrieben von davy
Zuerst einmal: Falls das hier, das falsche Forum ist, bitte verschieben.
Ich möchte in einem Formular bei Klick auf einen Link zusätzliche Textfelder anzeigen.
Dazu habe ich diese toggle Javascript Funktion:
<script type="text/javascript"><!-- var elemente = ['einsaetze', 'einnahmen']; // hier gehören die Element-IDs rein function toggleElement(id) { var element = document.getElementById(id); if(element.style.display == 'none') element.style.display = ''; // oder 'block' ... else element.style.display = 'none'; } function toggleAll() { for(var i = 0; i < elemente.length; i++) toggleElement(elemente[i]); } // --></script>
Und den PHP Code, mit einer While Schleife:
<?php ...... while ( $row = $abstract->fetchRow ( $res ) ) { $letter = $row ['l']; $zusatz = $row ['z']; $verlust = $row ['ver']; $time = $row ['time']; $id = $row ['id']; echo '<div class="day_box"> <form method="post" class="form" action="index.php?id=' . $id . '"> <ul> <div class="item"> <li><label for="letter">Letter:</label> <input type="text" name="letter" id="letter" size="20" value="' . $letter . '" /></li> </div> <div class="item"> <li><label for="zusatz">Zusatz:</label> <input type="text" name="zusatz" id="zusatz" size="20" value="' . $zusatz . '" /></li> </div> //Das ist der Link zur toggle-Funktion <a href="#" onclick="toggleAll();">Eingabefelder einblenden</a> <ul> <div class="item"> <li id="einsaetze" style="display: none"><label for="einsaetze">Einsätze:</label> <input type="text" name="einsaetze" id="einsaetze" size="20" /></li> </div> <div class="item"> <li id="einnahmen" style="display: none"><label for="einnahmen">Einnahmen:</label> <input type="text" name="einnahmen" id="einnahmen" size="20" /></li> </div> </ul> <input type="submit" name="edit_day" value="Daten aktualisieren" /> </form> </div>'; } ..... ?>
Diese While Schleife gibt mehrere Daten in einer Div Box aus einer Datenbank aus.
Hier gibt es aber folgendes Problem:
Wenn ich auf den Link
<a href="#" onclick="toggleAll();">Eingabefelder einblenden</a>
gehe, werden die zusätzlichen Eingabefelder nur in der obersten Box angezeigt.
Aber wenn ich in einer der unteren Boxen auf den Link gehe, werden die zusätzlichen Felder auch nur in der 1. Box angezeigt. Die Felder sollten aber in der jeweiligen Box erscheinen, wo auch der Link geklickt wird.
Wie kann ich es so ändern, dass immer in der jeweiligen Box, wo ich auch den Link klicke, die zusätzlichen Eingabefelder angezeigt werden?
Meine erste Idee war, jeder Box eine id zu geben. Aber wie soll der Code dann aussehen? Oder habt ihr andere Ideen? -
in: Javascript zum Reihe einfügen in Tabelle
geschrieben von davy
Hallo,
ich habe folgendes JavaScript zum Einfügen einer neuen Reihe mit Textfeld:
<script language="javascript"> var initial_count = new Array(); var rows_limit = 0; // Set to 0 to disable limitation function addRow(table_id) { var tbl = document.getElementById(table_id); // counting rows in table var rows_count = tbl.rows.length; if (initial_count[table_id] == undefined) { // if it is first adding in this table setting initial rows count initial_count[table_id] = rows_count; } // determining real count of added fields var tFielsNum = rows_count - initial_count[table_id]; if (rows_limit!=0 && tFielsNum >= rows_limit) return false; var input = '<input type="text" name="kartennummer[]" size="2">'; try { var newRow = tbl.insertRow(rows_count); var newCell = newRow.insertCell(0); newCell.innerHTML = input; var newCell = newRow.insertCell(1); } catch (ex) { //if exception occurs alert(ex); } } </script>
Ich möchte, dass bei einem Aufruf dieses JavaScripts nicht eine, sondern gleich 10 neue Reihen eingefügt werden.
Wie geht das?
Ich habs mit einer for-Schleife versucht, aber es klappt irgendwie nicht. -
in: Problem mit Loginscript
geschrieben von davy
the-8-beta schrieb:
$sql = "SELECT ". " * ". "FROM ". "benutzerdaten ". "WHERE ". "(Nickname = '".$pass."') AND ". "(Kennwort = '".md5($_REQUEST["pwd"])."')";
Da würde ich noch bisschen was ändern. Denn so ist es ganz einfach eine MySQL-Injection durchzuführen ;)
Du musst den Nickname auf Zeichen wie z.b. ' überprüfen, diese sollten in der Eingabe des Users nicht enthalten sein.
Was kann ich denn ändern, damit mein Code sicherer wird? -
in: Problem mit Loginscript
geschrieben von davy
kill-a-teddy schrieb:
Die Seite nach dem Login soll wohl deine start.php Seite sein?
Wenn in deiner Login keine Session besteht wird eine Session gestartet und an einen header übergeben... In der Checkuser wird die Session nochmal gestartet und wieder an den header übergeben... Kannst du testweise mal das include der checkuser php aus der start.php entfernen und schauen was passiert?
Außerdem fehlt dir etwas wichtiges!
error_reporting(E_ALL)
davy schrieb:
Die Fehlermeldung, die nach dem Login kommt, ist diese:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/www/web48/html/demo/start.php:1) in /home/www/web48/html/demo/checkuser.php on line 2
Hi!
Ja, die Start.php ist die Datei, die nach dem Login kommt.
Das Error Reporting habe ich in die start.php eingefügt und das include aus der start.php entfernt, wobei diese Datei ja bewirken soll, das geprüft wird, ob eine Session da ist. -
in: Problem mit Loginscript
geschrieben von davy
Hallo !
Ich programmiere derzeit einen Adminbereich für meine Seite. Beim Loginsystem tritt allerdings ein Fehler auf.
Ich habe schon nach dem Fehler gesucht, auch schon mit Google, aber ohne Erfolg. Vielleicht könnt Ihr mir ja helfen.
Meine login.php
<?php if(!isset($_POST['name']) || $_POST['name'] == ""){ header ("Location: index.html?fehler=1"); } else { // Session starten session_start (); include ("../sql.php"); $pass = $_POST['name']; $sql = "SELECT ". " * ". "FROM ". "benutzerdaten ". "WHERE ". "(Nickname = '".$pass."') AND ". "(Kennwort = '".md5($_REQUEST["pwd"])."')"; $result = mysql_query ($sql); if (mysql_num_rows ($result) > 0) { // Benutzerdaten in ein Array auslesen. $data = mysql_fetch_array ($result); // Sessionvariablen erstellen und registrieren $_SESSION["user_id"] = $data["Id"]; $_SESSION["username"] = $data["Nickname"]; $_SESSION["user_pw"] = $data["Kennwort"]; header ("Location: start.php"); } else { header ("Location: index.html?fehler=1"); } } ?>
die Logout.php
<?php // Wird ausgeführt um mit der Ausgabe des Headers zu warten. ob_start (); session_start (); session_unset (); session_destroy (); header ("Location: index.html"); ob_end_flush (); ?>
die checkuser.php, die in jede Unterseite eingebunden wird:
<?php session_start (); if (!isset ($_SESSION["username"])) { header ("Location: index.html"); } ?>
die Seite nach dem Login:
<?php include ("checkuser.php"); ?> <html> <head> <meta http-equiv='Content-Language' content='de'> <meta http-equiv='Content-Type' content='text/html; charset=windows-1252'> <title>Adminbereich</title> <link href="default.css" rel="stylesheet" type="text/css"> </head> <body> <div id="container"> <div id="main"> <div id="head"> <div id="logo"> </div> </div> <div id="body"> <div id="column"> <div id="menu3"> </div> </div> <div id="content"><div id="page"> <h1>Startseite</h1> <div class="content" id="pageDescription"><p></p> Willkommen im Adminbereich! </div> </div> </div> </div> <div id="footer"></div> </div></div> </body> </html>
Die Fehlermeldung, die nach dem Login kommt, ist diese:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/www/web48/html/demo/start.php:1) in /home/www/web48/html/demo/checkuser.php on line 2 -
in: Kleine Anpassung an Album Script PHP
geschrieben von davy
philippkern schrieb:
Ok dann ist ja gut.
In meinem Script ist ein Fehler.
array_multisort($filemtimes, $picture_list); #mit array_multisort($filemtimes, SORT_DESC, $picture_list); #austauschen
Vielen Dank !
Jetzt klappt alles! -
in: Kleine Anpassung an Album Script PHP
geschrieben von davy
philippkern schrieb:
Also es wird zur Errechnung der "neuesten" Bilder filemtime verwendet.
Das gibt das Datum der letzten Dateiänderung zurück, und nicht wann es erstellt wurde.
Ein Erstelldatum kann man glaub ich nicht bekommen.
Bei meinem Script im 1. Post ging das so, dass die neusten Bilder oben waren.
Das Script ist für eine Webcam, die in einen Ordner auf meinem Server alle 10 Sekunden ein Bild speichert.
Und das neueste Bild soll immer oben sein. Das Änderungsdatum ist somit auch das Erstelldatum. -
in: Kleine Anpassung an Album Script PHP
geschrieben von davy
philippkern schrieb:
Hallo,
ich hab mir mal die Zeit genommen und das ein bisschen umgeschreiben.
<?php // pfad in dem nach bildern gesucht werden soll $path = getcwd(); $picture_list = get_newest_images($path, "{*.gif,*.png,*.jpg,*.JPG}", 20); echo " <table border='1'> <tr> <th>Bild</th><th>Name</th><th>Datum</th><th>Pixel</th> </tr> "; foreach($picture_list as $picture) { echo "<tr>"; echo "<th><img src=\"" . $path . $picture['filename'] . "\" width=\"300\" alt=\"" . $picture['filename'] . "\"></th>"; echo "<td>" . $picture['filename'] . "</td>"; echo "<td>" . date("d.m.Y H:i", $picture['filemtime']) . "</td>"; echo "<td>" . $picture['image_size_width'] . " x ". $picture['image_size_height'] . "</td>"; echo "</tr>"; } echo "</table>"; function get_newest_images($path, $file_types, $limit) { $picture_list = array(); $filemtimes = array(); chdir($path); foreach(glob($file_types, GLOB_BRACE) as $filename) { $image_info = getimagesize($filename); $filemtime = filemtime($filename); $filemtimes[] = $filemtime; $picture_list[] = array("filename" => $filename, "filemtime" => $filemtime, "image_size_width" => $image_info[0] , "image_size_height" => $image_info[1]); } array_multisort($filemtimes, $picture_list); return array_slice($picture_list, 0, $limit); } ?>
Das ist ungetestet, ich garantiere für nix. :D
Alle unbekannten Funktionen bitte im Manual nachschlagen.
//Edit1: Fehler ausgebessert ...
Hallo !
Danke, das geht jetzt, dass nur 20 Bilder angezeigt werden. Allerdings werden nicht die 20 neuesten angezeigt.
Die neuesten Bilder sollen immer oben sein. -
in: Kleine Anpassung an Album Script PHP
geschrieben von davy
Hallo !
Ich habe folgendes Script zum Auslesen aller Bilder in einem Verzeichnis.
<?php $bilderliste = array(); $verzeichnis = "./"; $handle = openDir($verzeichnis); while ($datei = readDir($handle)) { $verzeichnis_datei = $verzeichnis . $datei; if ($datei != "." && $datei != ".." && !is_dir($datei)) { if (strstr($datei, ".gif") || strstr($datei, ".png") || strstr($datei, ".jpg") || strstr($datei, ".JPG")) { $info = getimagesize($verzeichnis_datei); array_push($bilderliste, array(filemtime($verzeichnis_datei) , $verzeichnis_datei , $info[0] , $info[1])); } } } closeDir($handle); rsort($bilderliste); echo " <table border='1'> <tr> <th>Bild</th> <th>Name</th> <th>Datum</th> <th>Pixel</th> </tr> "; foreach ($bilderliste as $zaehler => $element) { echo "<tr>"; echo "<th><img src=\"" . $bilderliste[$zaehler][1] . "\" width=\"300\" alt=\"\"></th>"; echo "<td>" . str_replace($verzeichnis, "", $bilderliste[$zaehler][1]) . "</td>"; echo "<td>" . date("d.m.Y H:i", $bilderliste[$zaehler][0]) . "</td>"; echo "<td>" . $bilderliste[$zaehler][2] . " x ". $bilderliste[$zaehler][3] . "</td>"; echo "</tr>"; } echo "</table>"; ?>
Jetzt will ich noch einbauen, dass nur die 20 neuesten Bilder angezeigt werden. Wie kann ich das machen? -
in: Php Album Script
geschrieben von davy
Danke ! Jetzt klappt alles ;) -
in: Php Album Script
geschrieben von davy
chatter schrieb:
<?php foreach (glob("*.jpg") as $datei) { $datei = urlencode ($datei); echo '<img src="'.$datei.'" />'; } ?>
Noch einfacher gehts wirklich nicht.
Genau das habe ich gesucht, danke !
Eine Frage noch: Wie kann ich *.jpg und *.JPG Dateien anzeigen lassen. Ich weiß, ich muss dann die 3. Zeile ändern, aber wie genau? -
in: Php Album Script
geschrieben von davy
fatfreddy schrieb:
Im Titel deines Beitrags steckt schon eine Lösung: http://www.phpalbum.net
Wie schon in meinem Beitrag geschrieben, suche ich ein sehr einfaches Script.
Es soll einfach nur die Bilder in dem Ordner, wo das Script ist, anzeigen.
Hat einer was? -
in: Php Album Script
geschrieben von davy
Hallo !
Ich suche schon seit einiger Zeit ein einfaches PHP Album Script.
Das Script soll die Bilddateien in dem Ordner, wo sich das Script befindet, auf einer Seite anzeigen. Sonst soll das Script nichts anderes können, es soll ganz einfach sein.
Habt Ihr sowas? -
in: Marathonlauf Java
geschrieben von davy
Mein Programm sieht jetzt so aus:
package sequenz; import java.io.IOException; import support.Console; public class Marathonlauf2 { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub // Die Marathon Distanz: final double MDISTANZ = 42195; //Konstante // Variablen für Benutzereingaben: int l_strecke, l_zeit, trainingszeit ; String[] zeit; // Variablen für Zeit: int h,m,s; // Zur Berechnung: double factor; int m_zeit; //Eingabe Console.print("Trainingsstrecke (in m)= "); l_strecke=Console.readInt(); Console.print("Trainingszeit (h:m:s)= "); trainingszeit=Console.readInt(); l_strecke = Integer.parseInt(System.console().readLine("Trainingsstrecke (in m)= ")); zeit = System.console().readLine("Trainingszeit (h:m:s)= ").split(":"); // Einlesen in Array l_zeit = Integer.parseInt(zeit[0]) * 3600 + Integer.parseInt(zeit[1]) * 60 + Integer.parseInt(zeit[2]); //Verarbeitung factor = MDISTANZ/l_strecke; // Den Faktor für die Zeit berechnen m_zeit = (int) (l_zeit * factor); // Die Zeit berechnen s = m_zeit % 60; // Die Sekunden berechnen m = ((m_zeit - s)/60)%60; // Die Minuten berechnen h = (m_zeit - m*60 - s) / 3600; // Die Stunden berechnen //Ausgabe Console.println("Die Marathonstrecke wird in folgender Zeit zurückgelegt: " + h + ":" + m + ":" + s); } }
Aber irgendwas ist noch falsch. Wenn ich beim Ausführen die Strecke und die Zeit eingebe, kommt "Error in number, try again.".
Ist irgendwo ein Fehler? -
in: Marathonlauf Java
geschrieben von davy
Hallo !
Ich soll bis morgen ein Marathonlauf Java Programm schreiben.
Angefangen habe ich so:
package sequenz; import java.io.IOException; import support.Console; public class Marathonlauf { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub // Deklaration double M_Strecke, M_Zeit, M_Sekunden; final double M_Distanz=42195; //Eingabe Console.print("Trainingsstrecke= "); M_Strecke=Console.readDouble(); Console.print("Trainingszeit= "); M_Zeit=Console.readDouble(); //Verarbeitung M_Sekunden = (int) (M_Strecke*4,2195); //Ausgabe Console.println("Die Marathonstrecke wird in folgender Zeit zurückgelegt: ); } }
Eingeben soll man die Trainingsstrecke in km und die Trainingszeit im Format h:m:s.
Die Marathondistanz ist immer 42195 m und soll als Konstante gespeichert werden.
Die Ausgabe soll dann die Zeit in h:m:s sein, die der Läufer für die Strecke braucht.
Könnt Ihr mir da helfen?
EDIT: Mir würde schonmal helfen, wenn ich wüßte, wie ich bei der Eingabe, die Zeit (z.B. 0:50:0) in Sekunden umrechne?
Wie kann ich das machen? -
in: Ecken abrunden bei Grafik
geschrieben von davy
drafed-map schrieb:
Hast du das vielleicht zu weit oben angesetzt? Video (ich lösche das Video nach einiger Zeit, es kann sein, dass es dann durch ein anderes Video mit gleicher URL ersetzt wird).
Hier habe ich das mal mit 5-, 10- und 15px-Radius gemacht.
Danke ! Ich werde es nochmal mit GIMP probieren
EDIT: Das Video kann ich nicht sehen. -
in: Ecken abrunden bei Grafik
geschrieben von davy
drafed-map schrieb:
• Grafik in Gimp öffnen
• Alles auswählen (jedoch nicht mit Strg+A, das funktioniert nicht)
• "Abgerundete Ecken" aktivieren
• Radius einstellen
und dann entweder
• Strg+C
• Strg+Shift+V
oder
• Strg+I
• Entf
Das hab ich versucht. Aber dann werden nur die beiden unteren Ecken abgerundet. -
in: Ecken abrunden bei Grafik
geschrieben von davy
Hallo !
Könnt Ihr mir bei folgender Grafik http://davidlohmann.de/ebay/vorlage.png alle 4 Ecken abrunden? Ich krieg das bei GIMP irgendwie nicht hin :-/ -
in: Zeit ausrechnen Java Eclipse
geschrieben von davy
pawnee schrieb:
Juche ... eine Schnitzeljagd nach den Fehlern!
Das ist ja mal eine spannende Angelegenheit :D
Edit:
davy ... was haben 1636 und 16 Sekunden denn gemeinsam?
Richtig, sie bilden die Ausgangssekunden und jene Sekunden die man erhält, wenn man von 1636 die 27 Minuten (in Sekunden umgerechnet) abzieht.
Achso, also ich muss die Sekunden von 27 Minuten abziehen. Ok, ich versuche es. -
in: Zeit ausrechnen Java Eclipse
geschrieben von davy
bladehunter schrieb:
Da fehlt noch ein Pluszeichen. Ich verrate aber nicht wo.
Ich hab´s gefunden. So musste es sein:
Console.println("Zeitdauer auf der Autobahn= " + hA + ":" + mA + ":" + tA );
Wenn ich jetzt tA ausgebe, gibt er mir 1636 aus, das sind die Sekunden. Aber ich habe ja schon Stunden und Minuten ausgegeben. Wie kann ich nur die Sekunden ausgeben, die noch fehlen? Also in diesem Fall 16 Sekunden?
Meine jetzige Ausgabe ist:
Zeitdauer auf der Autobahn= 0:27:1636
Es soll aber da stehen:
Zeitdauer auf der Autobahn= 0:27:16
Verstehst du, was ich meine? -
in: Zeit ausrechnen Java Eclipse
geschrieben von davy
bladehunter schrieb:
Wo ist jetzt genau das Problem? Weißt du nicht, wie man einen Wert in der Form "h:m:s" ausgeben kann? Bitte beschränke dich auf dein eigentliches Problem, wenn du eine Frage hast, weil es sonst deutlich länger dauert, bis man endlich versteht, wo etwas nicht funktioniert.
System.out.println( stunden + ":" + minuten + ":" + sekunden );
Und ein Packet "support" gibt es auf meinem System nicht. Habt ihr das von eurem Lehrer bekommen?
Wenn du generell Probleme hast, die Aufgabe zu lösen, schreibe bitte die eigentliche Aufgabe auf und erkläre wo deine Verständnisschwierigkeiten sind.
Und falls du Zeit findest, such dir mal nen Editor mit Syntax-Highlighting für Java und compiliere dir deine Programme auf der Kommandozeile. Eclipse ist für dich Overkill.
Danke für deine Antwort !
Ja, das support Packet haben wir vom Lehrer bekommen. Ich werde es so mal probieren.
EDIT: Ich habe aus deiner Zeile das hier gemacht:
Console.println("Zeitdauer auf der Autobahn= " hA + ":" + mA + ":" + sA );
Da ist aber ein Fehler drin, oder?
hA sind Stunden, mA sind Minuten und sA Sekunden ;) -
in: Zeit ausrechnen Java Eclipse
geschrieben von davy
Hallo !
Ich habe eben ein kleines Programm geschrieben, zum Ausrechnen von Stunden, Minuten, Sekunden auf der Autobahn.
Mein Programm sieht so aus:
package sequenz; import java.io.IOException; import support.Console; public class Navigationsprogramm2 { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub // Deklaration int mA, mL, mS int h, m, s; int tA, tL, tS, tG; double dA, dL, dS, dG; final double VA= 110; final double VL= 70; final double VS= 30; //Eingabe Console.print("Distanz der Autobahn= "); dA=Console.readDouble(); Console.print("Distanz der Landstraße= "); dL=Console.readDouble(); Console.print("Distanz in der Stadt= "); dS=Console.readDouble(); //Verarbeitung dG=dA+dL+dS; tA= (int) (dA*1000/VA*3.6); tL= (int) (dL*1000/VL*3.6); tS= (int) (dS*1000/VS*3.6); tG= (int) (tA+tL+tS); //Ausgabe Console.println("Gesamte Streckenlänge= "+dG); Console.println("Zeitdauer auf der Autobahn= "+tA); Console.println("Zeitdauer auf der Landstraße= "+tL); Console.println("Zeitdauer in der Stadt= "+tS); Console.println("Gesamtzeit für die Wegstrecke= "+tG); } }
In den Variablen tA, tL und tS sind die jeweiligen Sekunden gespeichert.
Ich muss aus den Sekunden die Stunden, Minuten und Sekunden unten bei der Ausgabe unter "Zeitdauer" ausgeben.
Wie kann ich aus den Sekunden die h:m:s ausgeben?
Bei der "Zeitdauer auf der Autobahn" sollte die Ausgabe 0:27:16 sein.
Ich arbeite mit Eclipse. -
in: Problem mit Java Wertetabelle
geschrieben von davy
schrotti12 schrieb:
Console.println gibts nicht.
Bei Java heißt dasSystem.out.println();
Wir schreiben in der Schule aber immer Console.println
In meinem Buch steht das auch anders, aber in der Schule ging es immer so.
EDIT: Um Console.print und Console.println zu schreiben, muss ich in Eclipse eine support Klasse erstellen, oder?
Was muss in die rein? -
in: Problem mit Java Wertetabelle
geschrieben von davy
Hallo !
Ich muss für die Schule in Java eine Wertetabelle erzeugen. Ich habe schonmal so angefangen:
package sequenz; import java.io.IOException; import support.Console; public class Wertetabelle { public static void main(String[] args) throws IOException { //Deklaration double xMin; double xMax; double x=-3; double y; double h; int n=6; //Eingabe Console.print("xMin="); xMin=Console.readDouble(); Console.print("xMax="); xMax=Console.readDouble(); Console.print("n="); n=Console.readInt(); Console.println("x : y"); //Verarbeitung y=x*x; Console.println(x+" : "+y); h=(xMax-xMin)/n; x=x+h; y=x*x; Console.println(x+" : "+y); h=(xMax-xMin)/n; x=x+h; y=x*x; Console.println(x+" : "+y); h=(xMax-xMin)/n; x=x+h; y=x*x; Console.println(x+" : "+y); h=(xMax-xMin)/n; x=x+h; y=x*x; Console.println(x+" : "+y); h=(xMax-xMin)/n; x=x+h; y=x*x; Console.println(x+" : "+y); h=(xMax-xMin)/n; x=x+h; y=x*x; Console.println(x+" : "+y); } }
Als Programm benutze ich Eclipse SDK. Bei dem Code zeigt mir Eclipse beim Ausführen:
Exception in thread "main" java.lang.Error: Unresolved compilation problems: The method print(int) in the type Console is not applicable for the arguments (String) The method print(int) in the type Console is not applicable for the arguments (String) The method print(int) in the type Console is not applicable for the arguments (String) The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console The method println(String) is undefined for the type Console at sequenz.Wertetabelle.main(Wertetabelle.java:26)
Was mache ich falsch? -
in: Wertetabellen in Java, Minima, Maxima
geschrieben von davy
bladehunter schrieb:
davy schrieb:
Also, ich muss die Wertetabelle mit allen Werten von -3 bis +3 in einer Wertetabelle ausgeben. Mehr weiß ich dazu leider nicht, ist alles neu für mich :)
Also wenn es Immer von -3 bis 3 geht und immer die Quadratzahlen ausgegeben werden sollen, macht das das ganze sehr viel einfacher.
import java.text.NumberFormat; public class Wertetabelle { public Wertetabelle() { NumberFormat nf = NumberFormat.getInstance(); System.out.println( "x|y" ); for( int i = -3; i <= 3; i++ ) { System.out.println( nf.format( i ) + "|" + nf.format( i * i ) ); } } public static void main( String[] args ) { Wertetabelle wt = new Wertetabelle(); } }
Das sieht schonmal sehr gut aus. Danke !
Morgen in der Schule werde ich das mal so probieren. -
in: Wertetabellen in Java, Minima, Maxima
geschrieben von davy
bladehunter schrieb:
Okay. Ein Quereinsteiger also. In dem Fall gehe ich mal davon aus, dass dein Lehrer dir jetzt nicht gleich den Kopf abreißen wird, wenn du's nicht hinbekommst
Allerdings werde ich leider immer noch nicht ganz aus der Aufgabenstellung schlau. Wie sieht die Eingabe genau aus? Bekommt man die Intervallgrenzen (in deinem Beispiel -3 bis 3) übergeben? Und woher bekommt man die dazugehörigen y-Werte? Werden die immer aus x^2 berechnet?
Bezüglich NumberFormat: http://download.oracle.com/javase/7/docs/api/java/text/NumberFormat.html
Ja, die y Werte werden immer mit x^2 berechnet.
Also, ich muss die Wertetabelle mit allen Werten von -3 bis +3 in einer Wertetabelle ausgeben. Mehr weiß ich dazu leider nicht, ist alles neu für mich :) -
in: Wertetabellen in Java, Minima, Maxima
geschrieben von davy
bladehunter schrieb:
*seufz* Warum muss es immer Java für den Anfang sein? Das ist pädagogisch totaler Unfug. Und nann noch Eclipse... -.-
Also, damit du das selbstständig lösen kannst, müssen wir erstmal klären
-Was du über Java weißt.
-Wie die genaue(!) Aufgabenstellung ist. Sonst kommt am Ende noch eine Lösung raus, die übermäßig kompliziert ist und das Internet in Brand steckt
Hast du verstanden was Objektorientierung ist? Wie soll die Wertetabelle eingelesen werden? Oder wird die Wertetabelle im Quellcode notiert? Liegen die Werte als Array vor bzw. sollen als solches eingelesen werden?
Hallo !
Erstmal danke für deine Antwort !
Ja, leider kam jetzt am Anfang schon Java.
Über Java weiß ich noch nicht viel, weil ich erst seit letzter Woche auf der Schule bin.
Die Aufgabenstellung war, dass wir eine Wertetabelle machen sollten. Dazu habe ich mir aufgeschrieben:
E = x min (double), x max, n (int)
Intervallabschnitt: n
x max - x min : n
Und die Tabelle soll ich noch mit NumberFormat erstellen. Mehr hab ich nicht im Heft.
Ich denke mal, es soll nicht zu schwer sein.
Kannst du mir dabei helfen, dass ich das morgen einigermaßen lösen kann? -
in: Wertetabellen in Java, Minima, Maxima
geschrieben von davy
Hallo !
Wir programmieren gerade in der Schule mit Java. Da ich das noch nicht verstanden habe, und eigentlich noch nichts richtiges hinbekommen habe, brauche ich eure Hilfe...
Wir arbeiten mit Eclipse.
Bei der Aufgabe, wo ich eure Hilfe brauche, sollten wir eine Wertetabelle erstellen mit x min, x max und n
Die Wertetabelle soll so aussehen:
x | y
-3|9
-2|4
-1|1
0|0
1|1
2|4
3|9
Könnt Ihr mir da helfen oder mir ein Beispiel zeigen, damit ich das morgen in der Schule fertig machen kann? -
in: Daten werden nicht in Datenbank gespeichert
geschrieben von davy
ole-reglitzki schrieb:
hab noch einmal nachgeguckt...
du hast die Klammer eine Zeile zu früh gesetzt.
Wenn
dort steht, ist es klar, dass er dort nie greift.$fehler = true; if (!$fehler) {
lg
Also wie soll der Code genau da aussehen?
Wo soll die Klammer hin?
EDIT: Habs schon selber hinbekommen! Vielen Dank für deine Hilfe ;) -
in: Daten werden nicht in Datenbank gespeichert
geschrieben von davy
Kann noch jemand den Code durchschauen, ob da irgendwo noch ein Fehler drin ist? -
in: Daten werden nicht in Datenbank gespeichert
geschrieben von davy
ole-reglitzki schrieb:
Mit mysql in php an sich kenne ich mich nicht aus, ich könnte dir höchstens sagen, wie es mit PDO aussehen würde (wenn du noch Einsteiger bist, steige bitte auf PDO um, könnte dir später das lernen eines anderen Datenbank-Typen ersparen).
EDIT: Zu PDO kannst du es hier sehen
Habe mein Script so geändert:
<?php if(isset($_POST['submit'])) { require('../admin/sql.php'); session_start(); function encrypt($string, $key) { $result = ''; for($i=0; $i<strlen($string); $i++) { $char = substr($string, $i, 1); $keychar = substr($key, ($i % strlen($key))-1, 1); $char = chr(ord($char)+ord($keychar)); $result.=$char; } return base64_encode($result); } $sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921"); $sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe); if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){ unset($_SESSION['rechen_captcha_spam']); $rezeptname = mysql_real_escape_string($_POST['rezeptname']); $zutaten = mysql_real_escape_string($_POST['zutaten']); $zubereitung = mysql_real_escape_string($_POST['zubereitung']); $kategorie = mysql_real_escape_string($_POST['kategorie']); $bild = mysql_real_escape_string($_POST['bild']); $infos = mysql_real_escape_string($_POST['infos']); $fehler = false; if(trim($zutaten) == "") { echo "<b><font color=\"red\">Bitte geben Sie die Zutaten an.</font></b><br>"; $fehler = true; } if(trim($zubereitung) == "") { echo "<b><font color=\"red\">Bitte geben Sie eine Zubereitung ein.</font></b><br>"; $fehler = true; } if(trim($rezeptname) == "") { echo "<b><font color=\"red\">Bitte geben Sie einen Rezeptnamen ein.</font></b><br>"; $fehler = true; } if(trim($kategorie) == "") { echo "<b><font color=\"red\">Bitte geben Sie eine Kategorie an.</font></b><br>"; } $fehler = true; if (!$fehler) { $eintrag = "insert into rezeptvorschlaege (rezeptname, zutaten, zubereitung, kategorie, bild, infos) values ('".$_POST['rezeptname']."', '".$_POST['zutaten']."', '".$_POST['zubereitung']."', '".$_POST['kategorie']."', '".$_POST['bild']."', '".$_POST['infos']."')"; $eintragen = mysql_query($eintrag); } if($eintragen == true) { echo " <p><b><font face='Arial' color='#008000' size='4'>Vielen Dank für Ihren Rezepteintrag !</font></b></p> <p><font face='Arial' color='#008000'>Nach einer kurzen Überprüfung erscheint Ihr Rezept in der Rezeptübersicht.</font></p> <p> </p> <p><font face='Arial' size='4'><a href='rezept_eintragen.php'>Noch ein Rezept eintragen</a></font></p> <p> </p> <p><font face='Arial' size='4'><a href='index.php'>Zurück zu den Rezepten</a></font></p> "; } } } else { echo '<b><font color=\"red\">Der Sicherheitscode ist leider falsch. Bitte versuche es erneut !</font></b><br>'; } ?>
Aber es klappt immernoch nicht. Ist da noch ein Fehler drin? -
in: Daten werden nicht in Datenbank gespeichert
geschrieben von davy
ole-reglitzki schrieb:
hinter
fehlt eine }, welche du hinter$fehler = true;
gesetzt hast.if($eintragen == true) { ... }
Zudem würde ich dir von der Zeile
abraten, da böse User da einiges anstellen könnten.$eintrag = "insert into rezeptvorschlaege (rezeptname, zutaten, zubereitung, kategorie, bild, infos) values ('".$_POST['rezeptname']."', '".$_POST['zutaten']."', '".$_POST['zubereitung']."', '".$_POST['kategorie']."', '".$_POST['bild']."', '".$_POST['infos']."')";
lg Ole
Erstmal danke für deine Antwort !
Wie könnte ich die Zeile denn sicherer machen? -
in: Daten werden nicht in Datenbank gespeichert
geschrieben von davy
Hallo !
Habe für meine Seite ein Script programmiert, womit man eingegebene Daten in meine Datenbanktabelle speichert.
Irgendwie ist da noch ein Fehler drin, ich finde keinen Fehler.
Wenn man das Formular abschickt, und alle Pflichtfelder und den Sicherheitscode ausgefüllt hat, kommt nur eine weiße Seite. Es wird auch nichts in die DB eingetragen.
Wenn ich ein Pflichtfeld nicht ausfülle, kommt ein Fehler. Also da klappt alles, nur das Speichern klappt nicht.
Hier das Script:
<?php if(isset($_POST['submit'])) { require('../admin/sql.php'); session_start(); function encrypt($string, $key) { $result = ''; for($i=0; $i<strlen($string); $i++) { $char = substr($string, $i, 1); $keychar = substr($key, ($i % strlen($key))-1, 1); $char = chr(ord($char)+ord($keychar)); $result.=$char; } return base64_encode($result); } $sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921"); $sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe); if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){ unset($_SESSION['rechen_captcha_spam']); $rezeptname = mysql_real_escape_string($_POST['rezeptname']); $zutaten = mysql_real_escape_string($_POST['zutaten']); $zubereitung = mysql_real_escape_string($_POST['zubereitung']); $kategorie = mysql_real_escape_string($_POST['kategorie']); $bild = mysql_real_escape_string($_POST['bild']); $infos = mysql_real_escape_string($_POST['infos']); $fehler = false; if(trim($zutaten) == "") { echo "<b><font color=\"red\">Bitte geben Sie die Zutaten an.</font></b><br>"; $fehler = true; } if(trim($zubereitung) == "") { echo "<b><font color=\"red\">Bitte geben Sie eine Zubereitung ein.</font></b><br>"; $fehler = true; } if(trim($rezeptname) == "") { echo "<b><font color=\"red\">Bitte geben Sie einen Rezeptnamen ein.</font></b><br>"; $fehler = true; } if(trim($kategorie) == "") { echo "<b><font color=\"red\">Bitte geben Sie eine Kategorie an.</font></b><br>"; $fehler = true; if (!$fehler) { $eintrag = "insert into rezeptvorschlaege (rezeptname, zutaten, zubereitung, kategorie, bild, infos) values ('".$_POST['rezeptname']."', '".$_POST['zutaten']."', '".$_POST['zubereitung']."', '".$_POST['kategorie']."', '".$_POST['bild']."', '".$_POST['infos']."')"; $eintragen = mysql_query($eintrag); } if($eintragen == true) { echo " <p><b><font face='Arial' color='#008000' size='4'>Vielen Dank für Ihren Rezepteintrag !</font></b></p> <p><font face='Arial' color='#008000'>Nach einer kurzen Überprüfung erscheint Ihr Rezept in der Rezeptübersicht.</font></p> <p> </p> <p><font face='Arial' size='4'><a href='rezept_eintragen.php'>Noch ein Rezept eintragen</a></font></p> <p> </p> <p><font face='Arial' size='4'><a href='index.php'>Zurück zu den Rezepten</a></font></p> "; } } } else { echo '<b><font color=\"red\">Der Sicherheitscode ist leider falsch. Bitte versuche es erneut !</font></b><br>'; } } ?>
Könnt Ihr da vielleicht mal drüberschauen? -
in: Suche Bluetooth Headset
geschrieben von davy
Ist ein Bluetooth Headset denn sicher? Also überträgt es zuverlässig?
Oder welche vielleicht besseren Alternativen gibt es für mich? Ich will ohne Kabel in max. 10 Metern Entfernung mit Skype am PC oder auch optional mit dem Iphone telefonieren. -
in: Suche Bluetooth Headset
geschrieben von davy
Funktioniert die Verbindung denn reibungslos?
Verbindet sich der Computer beim Start automatisch mit dem Headset?
Hast du einen USB Bluetooth Stick für die Verbindung?
Benutzt du das Headset denn auch für Skype Anrufe? -
in: Suche Bluetooth Headset
geschrieben von davy
Danke für die Links !
Mir ist sehr wichtig, dass mein Gesprächspartner mich auch versteht, nicht nur leise.
Zurzeit habe ich ein Headset, was meine Stimme nur sehr leise überträgt, obwohl das Mikro direkt vorm Mund ist :-/
Wer von euch hat denn ein Bluetooth Headset und kann mir ein bisschen was darüber sagen? -
in: Suche Bluetooth Headset
geschrieben von davy
Hi !
Ich suche ein gutes Bluetooth Headset, um z.B. über Skype zu telefonieren. Für mein Smartphone sollte es auch kompatibel sein für Skype Anrufe.
Es sollte angenehm zu tragen sein, nicht zu teuer sein und eine gute Gesprächsqualität haben.
Könnt Ihr mir was empfehlen? -
in: umts wlan router
geschrieben von davy
mator-kaleen schrieb:
Gibts bei Amazon: [amazon]B00241LWTG[/amazon]. Aber ich rate dir Entweder zu einem Smartphone mit Tethering oder zu einem UMTS Stick, die sind handlicher. (Außer du willst mehereren Zugriff auf dein Internet geben.)
Danke für deine Antwort ! -
in: umts wlan router
geschrieben von davy
Hallo !
Ich suche einen Router, wo ich eine SIM Karte reinstecken kann, und der mir dann ein WLAN Signal erstellt, mit dem ich mich dann verbinden kann.
Das Gerät sollte nicht zu groß sein.
Welche Router könnt Ihr mir da empfehlen? Gibt es sowas überhaupt? -
in: Problem mit openSUSE 11.4 Installation
geschrieben von davy
Hallo !
Ich versuche schon seit einigen Tagen openSUSE 11.4 auf meinen Computer zu installieren.
Zurzeit verwende ich als Betriebssystem Windows 7 und möchte openSUSE parallel dazu installieren. Dazu habe ich mir schon eine leere Partition erstellt mit 40 GB Größe.
Ich habe im Computer eine 320 GB Platte mit den Partitionen:
(C:) <- Dort ist das Windows
(D:) <- Datenpartition
(G:) <- für das openSUSE
Als Computer benutze ich einen acer aspire r3610.
Das openSUSE 11.4 64bit habe ich von der Homepage heruntergeladen und via Unetbootin auf einen USB Stick kopiert. Wenn ich davon boote, läuft die Installation erst normal, aber dann bei der Paketinstallation kommen einige Fehler. Wenn es dann fertig ist, startet trotzdem nur Windows.
Was mache ich falsch? Ich habe die 64bit Version heruntergeladen, weil in meinen Systeminformationen bei Windows 7 64bit angezeigt wird. -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
Habe mir heute einen 8GB USB Stick gekauft :)
Ich habe nun mit Unetbootin die ISO Datei von openSUSE 11.4 auf den Stick gepackt und habe vom Stick gebootet.
Nach dem Booten vom Stick, gehe ich auf "Installation starten" oder so ähnlich, dann muss ich Festplatte auswählen, oder?
Dort sehe ich dann 4 Festplatten, eine davon ist mein Stick. Wenn ich meinen Stick auswähle, muss ich ein Quellverzeichnis eintragen. Welches trage ich dort ein?
Ich kann in dem Installationsprogramm dann auch eine Partionierung meiner Festplatten vornehmen, oder? Weil ich brauche eine Partition für openSUSE.
Mfg -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
Wie mache ich den USB Stick denn am besten bootfähig? -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
qwertz4 schrieb:
Das Live CD Image ist sicher auch ein ISO also nur mit Stick oder CD Lauffähig.
mal eine andere Frage, hast du noch freien Platz (unpartitioniert) den du für eine
Linux Installation nehmen könntest.
Beispiel Plattenlayout
Partition 1|Windows 40 GB |
Partition 2|Linux OS 20 GB |
Partition 3|Linux SWAP 4GB|
Also darf die Festplatte nicht komplett in den Klauen des Windows liegen.
du kannst das mit cmd --> fdisk --> 4 Prüfen oder auch im Windows
unter Systemsteuerung --> Verwaltung --> Computer Browser (oder so)
Dort müsste es eine Festplattenverwaltung geben. Sorry habe grad kein Win da.
Für die Installation wirst du wahrscheinlich um ein CD Laufwerk nicht rum kommen.
Zur Not USB2IDE Adapter für ca. 19 Euro und ein Normales IDE CD Rom Laufwerk besorgen
kostet nicht die Welt und für Windows kannst du das sicher auch brauchen.
Also ist das richtig, dass ich mit diesem ISO File keine komplette Installation durchführen kann sondern nur ein Live System testen kann?
Ob ich freien Platz habe, weiß ich nicht.
Ich probiere mal, Platz zu schaffen ;) -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
sideblog schrieb:
davy schrieb:
Ich habe einen USB Stick mit 2 GB Speicher. Reicht das für openSUSE 11.4?
Für die ISO Datei reicht das nicht. Die ist etwa 4 GB groß.
Es gibt auch Live-Versionen von Suse, die sind kleiner und passen auf den Stick.
Hab ich eben gefunden und lade es gerade runter. Danke !
Damit kann ich dann aber das Linux nur Live ausprobieren und nicht fest installieren, oder? -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
Ich habe einen USB Stick mit 2 GB Speicher. Reicht das für openSUSE 11.4?
Für die ISO Datei reicht das nicht. Die ist etwa 4 GB groß. -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
fatfox schrieb:
Warum so kompliziert ?
OpenSuSE lässt sich wie jedes andere Linux bspw. als NetInstall von einem USB Stick installieren, man kann natürlich auch die DVD Images auf einen USB Stick schieben aber das dauert unnötig lange und man muss am Schluss noch das System updaten...das ist nicht effizient.
Wie man einen USB Stick als Installationsmedium verwendet findet man auf der OpenSuSE Website oder in diversen SuSE Foren erklärt.
Und einen leeren USB Stick zu beschaffen dürfte deutlich einfacher sein als eine Bios Extension für virtuelle Laufwerke zu finden.
Ok, ich versuche, einen leeren USB Stick zu finden?
Aber wie mache ich einen Stick bootfähig?
Geht das z.B. mit Unetbootin? -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
Ich habe es jetzt mit Virtual CloneDrive 5.4.5.0 versucht. Aber dieses virtuelle Laufwerk existiert leider nur im laufenden Windows. Ich würde lieber, direkt von diesem Laufwerk booten, und openSUSE so installieren. Das ist auch besser, wie ich in einigen Foren gelesen habe.
Jetzt meine Frage:
Kann man auch ein virtuelles Laufwerk erstellen, dass nicht nur im Windows angezeigt wird, sondern auch nach einem Neustart im BIOS? -
in: openSUSE ohne CD Laufwerk installieren
geschrieben von davy
Hallo !
Ich möchte gerne auf meinem ASUS Netbook das neue openSUSE 11.4 installieren neben meinem aktuellen einzigen Betriebssystem Windows XP.
Mir steht leider kein externes CD Laufwerk zur Verfügung, auch leider kein USB Stick, der ist heute kaputt gegangen :(
Gibt es eine Möglichkeit, das openSUSE, vielleicht aus Windows XP heraus zu installieren als Betriebssystem neben Win XP, sodass ich beim Start auswählen kann, welches System ich starten will.
Die ISO Datei für openSUSE 11.4 liegt schon auf meiner Festplatte. -
in: Grafik bearbeiten
geschrieben von davy
Hallo !
Ich muss in folgender Grafik http://davy.lima-city.de/schriftzug_veranstaltungen.gif den Text bearbeiten.
Könnt Ihr mir vielleicht sagen, welche Schriftart verwendet wurde und wie ich den ersten Buchstaben größer mache, so wie in der Grafik?
-
in: Asus EEEPC 1000H von USB wiederherstellen
geschrieben von davy
reimann schrieb:
Naja normalerweise sollte das automatisch laufen, wenn der USB-Stick bootfähig gemacht wurde (dazu wird einfach ein MBR emuliert).
Habe aber auch ein Programm gefunden was das leisten sollte. Da müsste dann nur ISO rein und fertig.
http://winfuture.de/news,26626.html
€dit: Schau aber auf der originalseite vorbei da is eine neuere Version.
http://www.boodaa.de/index.php?option=com_content&view=article&id=22:bootdisk2bootstick&catid=13:visual-studio-net-2005&Itemid=44
In dem Programm kann ich die ISO irgendwie nicht auswählen.
Wie kann ich denn den USB Stick bootfähig machen?
EDIT: Jetzt habe ich es geschafft, eine ISO auszuwählen. Aber wenn ich auf Start klicke, passiert da nichts. Also es kommt nichts auf den Stick. -
in: Asus EEEPC 1000H von USB wiederherstellen
geschrieben von davy
reimann schrieb:
Einen andere Weg gibt es nicht, außer du nimsmt ein bootfähiges Medium. Es sei denn der Hersteller hat da noch etwas vorgesehen. zum Beispiel bei den Medion Akoyas geht das auch ohne CD von der Recoverypartition aus, dazu muss man einfach irgendeine Funktionstaste drücken, aber ob Asus das auch vorgesehen hat weiß ich nicht.
Eine Recoverypartition gibt es bei Asus leider nicht.
Wenn ich von dem Stick boote, sagt mir der EeePC, "Bootmgr fehlt. Neustart mit Strg+Alt+Entf"
Muss ich auf dem Stick einen Bootmgr speichern oder wie ist das gemeint?