Avaleht
uus teema   vasta Tarkvara »  WWW »  Piltdi pealkiri txt failist märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
Risto40
HV vaatleja

liitunud: 31.10.2004




sõnum 27.05.2009 13:44:49 Piltdi pealkiri txt failist vasta tsitaadiga

tere,
kuna ma ise PHP-d ei tunne, oskan vaid mega lihtsaid asju muuta, siis oleks nats abi vaja. Mul on tehtud hetkel nii, et pildi pealkirjana ehk title='' kuvatakse pildifaili nimi. Kuid sooviks lisada title'sse veel mõnd kommentaari, kuid mitte igakord. Seega, peaks script välja nägema midagi sellist, et loeb pildifaili nime, seejärel heidab pilgu ühte kindlasse .txt faili, kus asuvad mitmete piltide kommentaarid. Ning kui script leiab failist rea mille esimene 'sõna' vastab pildifaili nimele, siis ta loeb sealt välja teksti, mis sellele järgneb (eraldamiseks võiks teksti olla nt < ja > vahel). ja minu ülesanne oleks siis vaid see nt $komm_txt_failist PHP's title jutumärkide vahele panna. ja juhul, kui õiget rida ei leidu, siis ei lisata midagi - väärtus = ""
a ja faili-/pildinimi on mul juba failist kätte saadud, oletame, et see on $failinimi

viitsib keegi siukse asja PHP'na kirjutada?
tagasi üles
vaata kasutaja infot saada privaatsõnum
airm
HV Guru

liitunud: 26.02.2003




sõnum 27.05.2009 14:12:20 vasta tsitaadiga

Sa oled juba kõik ära kirjeldanud jutuga,
nüüd on ainult tõlkimise vaev php -keelde.
Sa ju oled miskit teinid ka juba, vaja ainult täiendada(kirjeldus oli ilus)?
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 2 :: 1 :: 50
tagasi üles
vaata kasutaja infot saada privaatsõnum
Risto40
HV vaatleja

liitunud: 31.10.2004




sõnum 27.05.2009 14:39:30 vasta tsitaadiga

jep, vaid täiendada oleks vaja. ehk siis lauset, mis võrdleks txt failis olevate ridade esimesi sõnu $failinimi'ga, matchi korral loeks väärtuse <ja > vahelt ning jätaks loetu meelde $komm_txt_failist sisse.
tagasi üles
vaata kasutaja infot saada privaatsõnum
airm
HV Guru

liitunud: 26.02.2003




sõnum 27.05.2009 14:56:17 vasta tsitaadiga

Kirjuta sinna faili hoopis massiiv:
<?php
$massiiv = Array(''=>'', ''=>'', ''=>'', ''=>'', ''=>'');
?>
include sisse ja massiiviga on lihtsam sul võidelda...
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 2 :: 1 :: 50
tagasi üles
vaata kasutaja infot saada privaatsõnum
Risto40
HV vaatleja

liitunud: 31.10.2004




sõnum 27.05.2009 17:42:59 vasta tsitaadiga

sry, mu teadmisest PHP's ikka väga väikesed, ega saa aru, mis sa kirjutasid.
koodijupp, mis mul juba olemas ja töötab, on all olev.
-----------------------
<?

$names = array();
//$dates = array();
$dir = 'pildikaust';//PILTIDE ASUKOHT
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if (strlen($file) - strpos(strtoupper($file), '.JPG') == 4) {
$names[] = $file;
$dates[] = filectime("$dir/$file");
}
}
closedir($handle);
}
arsort($dates); //asort sorteerib ja paneb uuemad lõppu, arsort on vastupidi
foreach ($dates as $key=>$value) {
$file = $names[$key];
$str = $file; //failinimi laiendita
$str = explode(".", $str); //failinimi laiendita
$failinimi_laiendita = $str[0]; //failinimi laiendita
//$date = date('d-m-Y', $value);
echo "
<a class='thumb_name' href='$dir/$failinimi_laiendita","_suur.jpg' title='Faili nimi: $failinimi_laiendita'>
<div align='center'>
<img src='$dir/$file' border='1' align='center'/><table border='0' cellspacing='0' cellpadding='0'><tr><td valign='bottom'>$failinimi_laiendita</td></tr></table>
</div>
</a>
";
}
?>
----------------------------

see koodijupp siis loeb kaustast jpg failid ning kuvab need lisades veel lingi suurele pildile.
aga nüüd oletame, et mul on samas kaustas veel olemas fail KOMMENTAARID.txt, ning nt pildifail nimega PILT001.jpg. Mida ma tahan, on see, et koodis oleks ka rida, mis kuvatud pildile (pilt001.jpg) lisab ka txt failis oleva kommentaari, kui seal on see olemas. Txt faili sisu näeks välja selline:
PILT001.jpg <pildi 001 kommentaar>
PILT002.jpg <pildi 002 kommentaar>
jne...
ja see kood võiks käia kõik read läbi kuni leiab kuvatud failinime seejärel loeb kommentaari nurksulgude seest. Kui aga failinime ridade esimesest sõnast ei leitud, siis ei loeta ka midagi.
lõplik tulemus peaks siis olema, et minu ülesanne on vaid suur ja väike pilt kasuta visata ning php teeb ülejäänu.
tagasi üles
vaata kasutaja infot saada privaatsõnum
airm
HV Guru

liitunud: 26.02.2003




sõnum 27.05.2009 19:13:51 vasta tsitaadiga

Ma ei hakka sulle valmis asja kirjutama.
Ma annan sulle õnge...

text -fail:
<?php
$massiiv = Array(
"PILT001.jpg" =>"pildi 001 kommentaar",
"PILT002.jpg" =>"pildi 002 kommentaar",
"PILT001.jpg" =>"pildi 003 kommentaar"
)
?>


Selles scriptis algusesse paned lause:
include('textifail.txt');

Kusagile vahele kirjutad:
$kommentaar='';
if (array_key_exist($str, $massiiv)) {$kommentaar = $massiiv[$str];}

$str on sul miski failinimi.
Pusi lõpuni nüüd ise icon_smile.gif
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 2 :: 1 :: 50
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 27.05.2009 19:22:09 vasta tsitaadiga

See tuleb veidi käsitöine sul, kuidas sa sellisel kujul txt faili salvestad? Selleks on olemas php funktsioonid, et massiivi stringina salvestada ja tagasi lugeda. Üks võimalus, kasutad serialize() ja unserialize()
Selles failis tekitad $kom_massiiv massiivi milles on keyks failinimi ja sisu $mingisisu
serialize teeb sellest massiivist stringi mille salvestad faili. Tagasi saad unserialize abil.

Teed kasutajaliidese, mille abil saad neid pildi komme lisada. Algselt on kõigi kommentar Pilt.

$mingisisu='Pilt';

foreach ($dates as $key=>$value) {
$file = $names[$key];
$kom_massiiv[$file]=$mingisisu;
}

$salvestus=serialize($kom_massiiv);

// salvestad txt faili

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  WWW »  Piltdi pealkiri txt failist
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.