Zum Inhalt springen

Monty82

Mitglieder
  • Gesamte Inhalte

    643
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Monty82

  1. Monty82

    RegExp in Perl

    Hier fehlen die Slashes als erlaubte Zeichen in [a-z-]. if($var =~ /^(\d+)\#(\/[a-z-\/]*)$/ ){
  2. Ich hab mich mal dran versucht und würd's so machen: <?php $string = "<p>ARTICLE[id=4 format=html]</p>HEADER[id=1 format=html transform=upper]<div><p>ARTICLE[id=4 format=csv]</p></div><br><p>ARTICLE[id=5]</p>"; $arrRes = array(); if (preg_match_all('/([\w]+)\[([^\]]+)\]/s', $string, $arrPregRes) > 0) { foreach ($arrPregRes[1] as $key=>$val) { if (!array_key_exists($val, $arrRes)) { $arrRes[$val] = array(); } if (preg_match_all('/([^\s=]+)=([^\s]+)/s',$arrPregRes[2][$key], $arrInnerPregRes) > 0) { $arrTmp = array(); foreach ($arrInnerPregRes[1] as $iKey=>$iVal) { $arrTmp[$iVal] = $arrInnerPregRes[2][$iKey]; } $arrRes[$val][] = $arrTmp; } } } echo "<pre>"; print_r($arrRes); echo "</pre>"; ?> [/PHP]
  3. Welchen Datentyp hat denn die Variable i? Ansonsten würde ich noch vermuten, dass ASP ggf. einen Punkt als Dezimaltrennzeichen erwartet.
  4. if ($line =~ m/^\Q$input\E/){...} Das \Q sorgt dafür, das alle nachfolgenden Zeichen, die in Perl bzw. im Regulären Ausdruck eine besondere Rolle spielen könnten, bis zum eventuellen Vorkommen von \E mit \ escaped werden.
  5. Nein. "i mod 1" ist nur bei Ganzzahlen 0. "i mod 2 = 0" würde man zur Erkennung von geraden Zahlen verwenden.
  6. Du könntest preg_replace_callback() benutzen: <?php function _replaceVar($_arrMatch) { $mixRes = ''; if (isset($GLOBALS[$_arrMatch[1]])) { $mixRes = $GLOBALS[$_arrMatch[1]]; } return $mixRes; } $strVarTest = 'test'; $intVarTest = 1; $strTest = 'Das ist ein Test mit den Werten {${strVarTest}} und {${intVarTest}}.'; echo $strTest."<hr>"; $strTest = preg_replace_callback('/\{\$\{([^\}]+)\}\}/','_replaceVar',$strTest); echo $strTest; ?> [/PHP] Edit: Ich habe mir gerade mal den e-Modifier angeschaut. Es geht auch so einfacher: [PHP] $strTest = preg_replace('/\{\$\{([^\}]+)\}\}/e','\$GLOBALS[\\1]',$strTest); Ich vermute, Du müsstest in Deinem Beispiel das Dollar-Zeichen escapen und für die Back-Referenz zwei Escape-Zeichen verwenden.
  7. Alternativ kann man der Funktion preg_quote() auch als zweiten Parameter den Begrenzer übergeben, der dann automatisch mit maskiert wird.
  8. Monty82

    cronjobs

    - Virenscanner-Updates - Spamassassin Rules-Updates - Mailfetcher - MRTG - Spamassassin Autolearner (HAM/SPAM Klassifizierung anhand eines bestimmten IMAP-Ordners) - Update der Distributions-Paket-Listen - Logrotate - Zeit-Synchronisation - AwStats - DynDns
  9. Oder das von der dafür vorgesehenen Funktion erledigen lassen: $sql="SELECT produkt FROM software WHERE produkt='".mysql_escape_string($produkt)."'";
  10. Wie sieht denn Dein bisheriger regulärer Ausdruck aus?
  11. Da das nativ von Outlook nicht unterstützt wird, brauchst Du dafür einen zusätzlichen Connector wie GeniusConnect.
  12. Mit PHP ist das definitiv nicht möglich, da das Script erst geparst wird, wenn der Datei-Upload fertig ist. Ich hab's damals so gelöst, dass ich den Datei-Upload mit Perl realisiert habe und beim Aufruf des Perl-Scripts die aktuelle PHP-Session-ID mit übergeben habe. So konnte ich den Upload-Status durch das Perlscript regelmäßig in eine temporäre Session-abhängige Datei schreiben lassen, und mittels PHP/Ajax auslesen.
  13. Wo wir hier gerade bei Tipps sind: Gebe niemals Benutzereingaben ungefiltert an die Datenbank weiter! SQL-Injection "[...] ='".mysql_real_escape_string($_POST['tag'])."' [...]" Zusätzlich sollte man vorher noch die Gültigkeit der Eingabe überprüfen.
  14. Alternativ kannst Du auch die Funktion OLD_PASSWORD() benutzen. $result = mysql_query ("select * from $table_user where username = '$wert1' and kennung = OLD_PASSWORD('$wert2')"); Oder einfach übergangsweise beides: ... AND ((length(kennung) = 41 AND kennung=PASSWORD('passwort')) OR (length(kennung) = 16 AND kennung=OLD_PASSWORD('passwort')))
  15. Wenn Ihr bspw. als MTA Postfix einsetzt, und das Ticket-System auf dem gleichen Server liegen sollte, können eingehende E-Mails an support@domain.tld mittels Pipe-Alias auch direkt an ein Script weitergeleitet und dort verarbeitet werden: support: "|/xyz/support_ticket.pl"
  16. Du kannst Dir den Funktionsaufruf auch ganz sparen, da im Array $row eh schon alle Felder der Abfrage enthalten sind. // Alle Spalten durchgehen foreach ($row as $key=>$val) { echo " <td>".$val."</td>\n"; } [/PHP]
  17. Habe bisher gute Erfahrungen mit den Daten von C. Killet Software machen können. Kommt aber auch darauf an, in welchem Zusammenhang Du die Daten brauchst. Falls Ich mich richtig erinnere, kann man Dort auch Beispiel-Daten downloaden.
  18. Du brauchst neben dem Dummy-Package auch noch das Source-Package, das Du ins gleiche Verzeichnis entpacken musst. Es gibt auch einen Download, der Dummy und Source beinhaltet ("Source with Dummy ZIP").
  19. Mit regulären Ausdrücken hätte es so aussehen können: <?php $strTmp = 'das ist ein {5,0,1} test {5,0,0} zum ersetzen von bildern'; $arrReplace = array(); if (preg_match_all('/{([0-9]+),([01]),([01])}/s',$strTmp,$arrPregRes) > 0) { if (is_Array($arrPregRes) && is_Array($arrPregRes[0])) { foreach ($arrPregRes[0] as $key=>$val) { if (is_Array($arrReplace) && !array_key_exists($val,$arrReplace)) { $intImgId = intval($arrPregRes[1][$key]); $intBorder = intval($arrPregRes[2][$key]); $intSize = intval($arrPregRes[3][$key]); if ($intSize == 1) $strFile = 'bild_mit_id_'.$intImgId.'_gross.jpg'; else $strFile = 'bild_mit_id_'.$intImgId.'_klein.jpg'; $arrReplace[$val] = '<img src="'.$strFile.'" border="'.$intBorder.'">'; } } } } if (is_Array($arrReplace)) { foreach ($arrReplace as $key=>$val) { $strTmp = str_replace($key,$val,$strTmp); } } echo $strTmp; ?> [/PHP]
  20. Ich habe bisher gute Erfahrungen mit FlashGet gemacht. Die Software kann auch Deinen PC herunterfahren, wenn Die Downloads fertig sind.
  21. Unter Verwendung externer Caching-Extensions wie eAccelerator oder APC kannst Du Daten auch Instanz-übergreifend cachen. Dazu stellen die Extensions API-Funktionen zur Verfügung, mit denen Du Variablen im Cache speichern und auslesen kannst. eaccelerator_get() eaccelerator_put() apc_store() apc_fetch()
  22. Monty82

    Debian

    Dann einfach die Datei /home/vinyl/.ssh/known_hosts löschen oder editieren und den Host Key für 192.168.42.8 entfernen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...