php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 09-03-2008, 01:27
DerSchonWieder
 Newbie
Links : Onlinestatus : DerSchonWieder ist offline
Registriert seit: Feb 2008
Beiträge: 74
DerSchonWieder ist zur Zeit noch ein unbeschriebenes Blatt
Standard Finde Fehler nicht ...

Sry für den "Aussagekräftigen" Betreff, aber mir ist kein anderer eingefallen.

Ich habe folgenden Codeschnipsel geschrieben, aber es wird nichts ausgegeben .
Es soll zufällige Zeichenfolgen aus einer Zeichenliste erstellen.
Allerdings nur 10 Sekunden.

PHP-Code:
<?php
$start 
microtime(true);
$chars 'abcdefghijklmnopqrstuvwxyz0123456789 !#$%&()*+,-.:<=>?@[]^_`{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZ';
while(
microtime(true) - $start 10) {
        
srand(microtime()*100);
    
$c1 strval($chars[rand(190)]);
    
$c2 strval($chars[rand(190)]);
    
$c3 strval($chars[rand(190)]);
    
$c4 strval($chars[rand(190)]);
    
$c5 strval($chars[rand(190)]);
    
$c6 strval($chars[rand(190)]);
    
$c7 strval($chars[rand(190)]);
    
$c8 strval($chars[rand(190)]);
    
$l rand(1,8);
    
$txt $c1.$c2.$c3.$c4.$c5.$c6.$c7.$c8."/r";
    
$txt substr($txt0$l);
    echo 
$txt;    
}
?>
Edit: Fehler gefunden, es wird aber:
Code:
Z@pe Z@pe GDSG GDSG....
ausgegeben.
Wie kann ich die Ausgabe ein wenig "zufälliger" gestalten?

Geändert von DerSchonWieder (09-03-2008 um 01:38 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 09-03-2008, 02:21
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Warum nicht unique id mit md5 verschlüsseln und kürzen?
Haste ne Zeichenkette aus buchstaben und zahlen (reicht ja eigentlich)..

Kommt eben auf den Sinn am Ende an..
Mit Zitat antworten
  #3 (permalink)  
Alt 09-03-2008, 11:49
Shurakai
 Master
Links : Onlinestatus : Shurakai ist offline
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.084
Shurakai ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also als 1. würde ich erstmal die Bedingung in der While-Schleife ändern. Sowas macht nicht viel Sinn. Überlege dir lieber, wieviel Buchstaben/Zeichen du insgesamt haben willst und lasse die Schleife entsprechend oft durchlaufen.

Dann schau dir mal mt_rand an. Dort findest du auch, dass du das srand() garnicht mehr brauchst.
Mit Zitat antworten
  #4 (permalink)  
Alt 09-03-2008, 13:46
DerSchonWieder
 Newbie
Links : Onlinestatus : DerSchonWieder ist offline
Registriert seit: Feb 2008
Beiträge: 74
DerSchonWieder ist zur Zeit noch ein unbeschriebenes Blatt
Standard

So, ich möchte eine MD5-Datenbank erstellen.
...Ich weiß, es gibt viele solcher...Ist aber einfach nur ein Fun-Projekt.

Das Script wird dann per Cronjob aufgerufen und dann trägt es die Daten in der DB ein.

Ich habs jetzt so gelöst
PHP-Code:
<?php
ini_set
('max_execution_time','1200');
$chars 'abcdefghijklmnopqrstuvwxyz0123456789 !#$%&()*+,-.:<=>?@[]^_`{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$mysqlhost='localhost';
$mysqluser='web485';
$mysqlpwd='lILBe8WG';
$mysqldb='usr_web485_1';
$connection=mysqli_connect($mysqlhost$mysqluser$mysqlpwd$mysqldb) or die('fehler beim verbinden');

$x 1;
while(
$x 1) {
    
$c1 strval($chars[mt_rand(190)]);
    
$c2 strval($chars[mt_rand(190)]);
    
$c3 strval($chars[mt_rand(190)]);
    
$c4 strval($chars[mt_rand(190)]);
    
$c5 strval($chars[mt_rand(190)]);
    
$c6 strval($chars[mt_rand(190)]);
    
$c7 strval($chars[mt_rand(190)]);
    
$c8 strval($chars[mt_rand(190)]);
    
$l mt_rand(1,8);
    
$txt $c1.$c2.$c3.$c4.$c5.$c6.$c7.$c8."/r";
    
$txt substr($txt0$l);
    
$hash md5($hash);  
    
mysqli_query($connection'INSERT INTO `hashes` (`str`, `hash`, `lenght`) VALUES (\''.$txt.'\', \''.$hash.'\', '.$l.'); '."\n");
}
mysqli_close($connection);

?>

Geändert von DerSchonWieder (09-03-2008 um 13:49 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 09-03-2008, 13:52
Shurakai
 Master
Links : Onlinestatus : Shurakai ist offline
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.084
Shurakai ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,

dir ist schon klar, dass du mit while ($x = 1) eine Endlosschleife erzeugst, oder?

Und selbst wenn du es mit so einer Schleife machen möchtest - das würde ich nicht, da gibt es doch viel bessere Möglichkeiten, so eine "Datenbank" aufzubauen - dann würde ich mir mal die EXTENDED-Inserts von mySQL anschauen. Damit kannst du viele Datensätze mit nur einer Query einfügen, hier hast du pro Schleifendurchlauf 1 - und das drückt den SQL-Server irgendwann in die Knie, vor allem, weil die Schleife endlos läuft.
Mit Zitat antworten
  #6 (permalink)  
Alt 09-03-2008, 14:39
DerSchonWieder
 Newbie
Links : Onlinestatus : DerSchonWieder ist offline
Registriert seit: Feb 2008
Beiträge: 74
DerSchonWieder ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Richtig,
es soll ja eine Endlosschleife erzeugt werden.
Irgendwas bricht es dann ab (nach 10min).
Ich nehme absichtlich pro Insert einen Query.

Das Feld MD5 ist als Unique gekennzeichnet.
Wenn ich nun alles in einen Query packe und dann ein Hash schon in der Tabelle drinn ist, bricht es mit einen Fehler ab->Es werden nicht alle Datensätze eingefügt.

...
cu.
Mit Zitat antworten
Antwort

Lesezeichen


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

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

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