random s txt

Programovacie jazyky, rady, poradňa...
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

random s txt

Príspevok od používateľa eror »

takto je random

Kód: Vybrať všetko

text = new Array("dobrý den", "ahoj", "čau");
x = Math.round(Math.random()*2);
document.write(text[x]);
a nwm ako spraviť aby tie texty vyberalo s xyz.txt súbora
1. riadok by bolo ahoj
2. riadok by bolo caw
a teraz by bola nahoda a vybralo by sa trebars to caw a hodilo by sa to sem
$file = fopen("caw/xyzs.txt", "w");
Sagittarius
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2883
Registrovaný: 13 feb 2007, 21:58
Bydlisko: Do nekonečna a ešte ďalej

Re: random s txt

Príspevok od používateľa Sagittarius »

A tie adresáre máš už asi vytvorené však? Tak by som požil nejaký switch a testoval by si, čo má v text[x] a podľa toho to zaradil, ale s týmto by bol problém pri veľa prvkoch, tak by si mohol porovnávať začiatok názvu cesty s obsahom text[x].
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

Re: random s txt

Príspevok od používateľa eror »

a inak sa to nedá?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: random s txt

Príspevok od používateľa audiotrack »

Sagittarius napísal:A tie adresáre máš už asi vytvorené však? Tak by som požil nejaký switch a testoval by si, čo má v text[x] a podľa toho to zaradil, ale s týmto by bol problém pri veľa prvkoch, tak by si mohol porovnávať začiatok názvu cesty s obsahom text[x].
načo switch, keď tam môže dať rovno tú premennu?

$file = fopen($vybraneSlovo . "/xyzs.txt", "w");
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

Re: random s txt

Príspevok od používateľa eror »

a ako to nadefinujem aby to vyberalo stoho txt suboru?

index2

Kód: Vybrať všetko

<?
$textfile ="random.txt";
$items = file("$textfile");
$item = rand(0, sizeof($items)-1);
echo $items[$item];
?>
index3

Kód: Vybrať všetko

<?php
include("index2.php");
?>
a nejde...
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: random s txt

Príspevok od používateľa audiotrack »

$subor = file('suborSoSlovami.txt');
$vybraneSlovo = $subor[mt_rand(0,count($subor)-1)];
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

Re: random s txt

Príspevok od používateľa eror »

v a.txt mam
a
b

Potom mam vytvorene zlozky
a
b
nieco2.php

Kód: Vybrať všetko

<?php
$subor = file('a.txt');
$vybraneSlovo = $subor[mt_rand(0,count($subor)-1)];

$int = file_get_contents($vybraneSlovo . "/xyzs.txt");
$file = fopen($vybraneSlovo . "/xyzs.txt", "w");

if($int>0){fwrite($file, --$int);}
else{fwrite($file, $int);}
fclose($file);
Header("Location: index.php");
?>
index.php

Kód: Vybrať všetko

<form name="counter" action="" method="get"><input type="text" size="8"
name="d2"><a href="nieco2.php" name="btn" id="btn" style="display:none">ja</a></form>
<script language="javascript">
var seconds=2 ;
document.counter.d2.value='2' ;

function display(){
   if(seconds > -1){
       document.counter.d2.value=seconds--;
       setTimeout("display()",1000) ;
   } else document.getElementById('btn').style.display="block";
}
display();
</script>
dam po 2 sekundach ja a ono to ide ked ten random s toho txt zobere b keď zobere a tak to vypise

Kód: Vybrať všetko

Warning: file_get_contents(a /xyzs.txt) [function.file-get-contents]: failed to open stream: Invalid argument in C:\xampp\htdocs\nieco2.php on line 7

Warning: fopen(a /xyzs.txt) [function.fopen]: failed to open stream: Invalid argument in C:\xampp\htdocs\nieco2.php on line 8

Warning: fwrite() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\nieco2.php on line 12

Warning: fclose() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\nieco2.php on line 13

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\nieco2.php:7) in C:\xampp\htdocs\nieco2.php on line 14
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: random s txt

Príspevok od používateľa audiotrack »

podľa tej chyby to vyzerá, že máš v tom súbore za písmenom "a" medzeru navyše. Buď ju zmaž (a celkovo pozor na tem súbor, aby si nemal na konci aj prázdny riadok a pod.) alebo to uprav takto: $file = fopen(trim($vybraneSlovo) . "/xyzs.txt", "w");
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

Re: random s txt

Príspevok od používateľa eror »

Kód: Vybrať všetko

Warning: file_get_contents(a /xyzs.txt) [function.file-get-contents]: failed to open stream: Invalid argument in C:\xampp\htdocs\nieco2.php on line 5

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\nieco2.php:5) in C:\xampp\htdocs\nieco2.php on line 12
a nemám tam medzeru... mam to pod sebou
b
a
nieco2.php

Kód: Vybrať všetko

<?php
$subor = file('a.txt');
$vybraneSlovo = $subor[mt_rand(0,count($subor)-1)];

$int = file_get_contents($vybraneSlovo . "/xyzs.txt");
$file = fopen(trim($vybraneSlovo) . "/xyzs.txt", "w");


if($int>0){fwrite($file, --$int);}
else{fwrite($file, $int);}
fclose($file);
Header("Location: index.php");
?>
//autoeditácia príspevku (31 Okt 2010, 11:43)
ešte som to spravil takto: že do a.txt som dal a/ a pod to b/ a v nieco2.php som vymazal
<?php
$subor = file('a.txt');
$vybraneSlovo = $subor[mt_rand(0,count($subor)-1)];

$int = file_get_contents($vybraneSlovo."/xyzs.txt");
$file = fopen(trim($vybraneSlovo)."/xyzs.txt", "w");


if($int>0){fwrite($file, --$int);}
else{fwrite($file, $int);}
fclose($file);
Header("Location: index.php");
?>
a teraz mi to tiez vyhadzuje ale takto

Kód: Vybrať všetko

Warning: file_get_contents(a/ xyzs.txt) [function.file-get-contents]: failed to open stream: Invalid argument in C:\xampp\htdocs\nieco2.php on line 5

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\nieco2.php:5) in C:\xampp\htdocs\nieco2.php on line 12
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: random s txt

Príspevok od používateľa audiotrack »

to trim daj aj o riadok vyššie, rovnako ako je trim($vybraneSlovo) vo funkcii fopen, tak bude aj v tej file_get_contents
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

Re: random s txt

Príspevok od používateľa eror »

ako to mysíš? takto? aj takto to nejde...

Kód: Vybrať všetko

$file = fopen(trim($vybraneSlovo)."xyzs.txt", "w");
$int = file_get_contents($vybraneSlovo."xyzs.txt");
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: random s txt

Príspevok od používateľa audiotrack »

keď napíšem "aj", tak to znamená že to máš pridať a v druhom nechať tiež a nie zmazať (resp. prehodiť poradie celých riadkov). Tiež neviem kde sa ti vyparili lomítka pred xyz.txt keď ešte v predošlom poste si ich mal.

$int = file_get_contents(trim($vybraneSlovo)."/xyzs.txt");
$file = fopen(trim($vybraneSlovo)."/xyzs.txt", "w");
eror
Medium Star
Medium Star
Príspevky: 457
Registrovaný: 16 nov 2008, 14:19
Bydlisko: GA

Re: random s txt

Príspevok od používateľa eror »

je to takto

Kód: Vybrať všetko

<?php
$subor = file('a.txt');
$vybraneSlovo = $subor[mt_rand(0,count($subor)-1)];

$file = fopen(trim($vybraneSlovo)."/xyzs.txt", "w");
$int = file_get_contents(trim($vybraneSlovo)."/xyzs.txt");

if($int>0){fwrite($file, --$int);}
else{fwrite($file, $int);}
fclose($file);
Header("Location: index.php");
?>
a teraz ked mam cislo 10 tak to neodpocita ale vymaze...
ps.
stacilo vymenit poradie
$int = file_get_contents(trim($vybraneSlovo)."/xyzs.txt");
$file = fopen(trim($vybraneSlovo)."/xyzs.txt", "w");
Napísať odpoveď