Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
shmop frage [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
shmop frage


 
subabrain
25-09-2005, 20:38 
 
update :

habe folgenden code -- der auch richtig geht aber das in den speicher geschriebene array wird beim auslesen nicht als solches erkannt ... sondern nur als wort eingegeben und als wort ausgegeben:


<?php

$max = 40;

// Erstelle einen $max Byte grossen gemeinsam genutzten Speicherblock
$shm_id = shmop_open(0xff8, "c", 0644, $max);
if(!$shm_id) {
echo "Konnte kein gemeinsames Speichersegment erstellen\n";
}

// Hole die Grösse des gemeinsamen Speicherblocks
$shm_size = shmop_size($shm_id);
echo "SHM Block mit: ".$shm_size. " Bytes wurde erstellt.\n";


$eingabe = $_POST['eingabe'];

if(isset($eingabe))
{

// Den Teststring wieder auslesen
$my_string = shmop_read($shm_id, 0, $shm_size);
if(!$my_string) {
echo "Konnte nicht aus dem gemeinsamen Speicher lesen\n";
}

if($my_string == "Array")
{

$my_string = array_push($my_string,"$eingabe");

// Teststring in den gemeinsamen Speicher schreiben
shmop_write($shm_id, "$my_string", 0);

}else{


$my_string = array("$my_string");

// Teststring in den gemeinsamen Speicher schreiben
shmop_write($shm_id, "$my_string", 0);

}

}


// Den Teststring wieder auslesen
$my_string = shmop_read($shm_id, 0, $shm_size);
if(!$my_string) {
echo "Konnte nicht aus dem gemeinsamen Speicher lesen\n";
}

foreach($my_string as $key)
{
echo $key;
echo "<br>";
}


shmop_close($shm_id);

?>


Vielen Dank fuer Antworten ... ich hoffe es kennt sich jemand mit shmop aus ^^ ... oder testet es eben ... wie er denkt das es geht :)

naja ... also thx ! .- ps der rest des threads ist sozusagen veraltet ^^

 
Hopka
25-09-2005, 20:42 
 
:rtfm:
Die Funktionen können mit Windows nicht eingesetzt werden, da Windows keinen gemeinsamen Speicher unterstützt.

 
penizillin
25-09-2005, 20:45 
 
Hopka, ich kann dir das englische manual nur empfehlen - es ist viel umfangreicher und aktueller als das deutsche. Note: Versions of Windows previous to Windows 2000 do not support shared memory. Under Windows, Shmop will only work when PHP is running as a web server module, such as Apache or IIS (CLI and CGI will not work).

evtl. hilft ein shmop_close() dahinter?

 
subabrain
25-09-2005, 20:51 
 
jo danke ... soweit war ich bereits ^^ - aber np habs bereits rausgefunden das shmop_delete unter windows nicht unterstützt wird

was allerdings sehr dumm ist ^^ - da alle anderen funktionen unter windows xp laufen ^^

 
penizillin
25-09-2005, 20:54 
 
habs bereits rausgefunden das shmop_delete unter windows nicht unterstützt wird wo steht denn das?

 
subabrain
25-09-2005, 20:57 
 
habs unter linux und windows server probiert ^^ - einmal hier bei mir mit xampp unter win xp einmal server mit linux -- ich denke dann wird das wohl so sein oder - gibts evtl noch ne andere moeglichkeit wieso es bei windows nicht gelöscht wird ?:confused:

 
penizillin
25-09-2005, 20:59 
 
keine ahnung, würd mich nur wundern...

 
subabrain
25-09-2005, 21:00 
 
dito mich auch :huep:

edit : url geloescht ^^ ken bock auf spam ^^ :D

 
EEBKiller
25-09-2005, 22:45 
 
Original geschrieben von penizillin
keine ahnung, würd mich nur wundern...

Das hat mich gestern auch gewundert, wie ich feststellen musst, dass socket_accept unter Windows pro Sekunden 3MB RAM frisst. Zu meinem Glück wurde dieser Bug bereits reported und in 5.0.5 gefixed. Auch PHP is nicht perfekt ... ;)

 
penizillin
25-09-2005, 22:51 
 
ich muss dir recht geben.

 
subabrain
26-09-2005, 15:54 
 
hi !

also ich weiss das ich jetzt verdammt viele threads zu diesem thema gemacht habe ... aber da es mir sehr ernst ist mit dem chat will ich grad mal hier anfragen wie ihr einen shmop chat machen wuerdet - da es ja bereits hier vorgeschlagen wurde --- ich wäre euch ECHT VERDAMMT DANKBAR fuer ein paar wortfetzen ..................... THX !

mein momentaner plan sieht so aus .... :


frame mit http refresh -- habt ihr evtl was besseres ?

shmop erstellen mit gewisser byte anzahl :

eingabe des worts -- > wort wird in speicher gegeben mit 0 als anfangsspeicher --- > dann wird es wieder ausgegeben mit 0 als anfang und $wortlänge als end byte ...

und dann wird das neue wort wieder in den speicher gegeben diesmal mit $wortlänge des alten wortes als anfangs wert des speichers ... usw...


problem ist nur .. das alles was geschrieben wird in den speicher muss . .. und das der dann ganz schoen gross wird ... wenn ich das so mache ------------ >

deshalb ... habt ihr vielleicht eine idee wie ich das besser machen kann --- wäre euch echt dankbar ;)

THX !


greetz - subabrain !

 
subabrain
28-09-2005, 18:14 
 
update lesen - danke ^^

sag mal, hakt's bei dir?
hör auf zu drängeln, sonst wandert der thread ganz auf den müll!
wahsaga


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:03 Uhr.