Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem (PHP Datoteke)
Author Message
r0tring Offline
Redoviti posjetitelj
**

Posts: 230
Joined: Apr 2009
Reputation: 10
Post: #1
Problem (PHP Datoteke)
Evo imam problem:

recimo da imam datoteku test.txt i u njoj ovakav sadrzaj

Code:
scroler
gogy
stefo
tutorijali
scroler
gogy
->ovdje je kursor
Vazno je primjetiti da je i nakon zadnjeg imena pritisnut ENTER, tj. da je pozicija kursora ispod zadnjeg imena na pocetku redka!


Skripta treba da provjeri da li se u datoteci i u jednom redku nalazi ime gogy, ukoliko se nalazi da varijabli $postoji doda vrijednost 1 i automatski se izbacuje iz petlje, a ukoliko ne postoji da ostane 0.

Code:
<?php
$ime = gogy;
$postoji = 0;

$dat = @fopen("test.txt", "r");
if ($dat)
   {
     while (!feof($dat))
           {
             $redak = fgets($dat, 4096);
             if ($redak == $ime)
                {
                  $postoji = 1;
                                  break;
                            }
               }
         fclose($dat);
   }                            

echo '<br>'.'Postoji='.$postoji;
?>

Ja kako god da sklepam uvijek govori da ime ne postoji iako je ime u datoteci!
(This post was last modified: 29-09-2009 06:23 PM by r0tring.)
29-09-2009 06:20 PM
Find all posts by this user Quote this message in a reply
Kerber Offline
_
*

Posts: 357
Joined: Dec 2006
Reputation: 1
Post: #2
RE: Problem (PHP Datoteke)
Tu nastupa mirza, on ti je glavni sa tim fajlovima kao bazama podataka...

jednostavno.info

No da malo priblizim, mozes sva ta imena staviti u jedan red i razdvojiti ih nekim znakom npr "}{" ovom linijom, i onda pravis niz podataka gdje je

npr:

imas fajl jednog korisnika:

ime-gogy.dat

ciji je sadrzaj slijedeci
Code:
mirzabajric@hotmail.com}{PORUKA ;)}{Mirza Bajric}{mirzaba}{bWlyemFiYQ==}{10.07.2007}{Zivinice, BiH}{fajlovi/clint1b.jpg}

i onda uzimas te infomracije preko ovog.


Code:
<?
error_reporting(E_ALL ^ E_NOTICE);
include ("konf.php");

$kor = $_GET['korisnik']; // Uzima vrijednost za korisnik pomocu get metode
$taj_kor = "$kordir/ime-{$kor}.dat"; // postavlja adresu fajlu sa podacima o korisniku
if (file_exists($taj_kor)) //provjerava da li postoji takav fajl
{
$provjera = file($taj_kor); // dodaje promjenljivoj "provjera" fajl o korisniku u kojem ce traziti info
foreach($provjera as $line) //zadaje provjeru
{
$ovaline = explode('}{', $line); //postavlja uvjet pretrage

echo "<img src=\"$ovaline[7]\" /><br><br> Caos raja :)<br>Ime mi je ".$ovaline[2].", a nadimak koji koristim je ".$ovaline[3].".<br>Registrovao/la sam se datuma ".$ovaline[5].".<br>Dolazim iz $ovaline[6] .<br>Moja posebna poruka je: ".$ovaline[1]."";
}
}
else
{
echo "<br><br><br><center>Korisnik za kojeg ste postavili upit ne postoji!</center>";
}
?>

$ovaline[0] je prvi podatak izmedju onih zagrada
dalje provjerava gdje imaju opet zagrade i nalazi podatak 2 tj. $ovaline[1] sto je u ovom slucaju nekakva posebna poruka korisnika.

Itd... prouci mirzine skripte to je bas jednostavno.info He he

FGD!

Pravila foruma - pročitajte prije nego pitate
(This post was last modified: 29-09-2009 07:15 PM by Kerber.)
29-09-2009 07:10 PM
Visit this user's website Find all posts by this user Quote this message in a reply
r0tring Offline
Redoviti posjetitelj
**

Posts: 230
Joined: Apr 2009
Reputation: 10
Post: #3
RE: Problem (PHP Datoteke)
Evo da ne otvaram bezveze novu temu kad se i ova veze za datoteke i PHP.
E ovako moj problem je ovaj, cekajte samo malo da vam docaram sa slikom: Happy

[Image: pomocy.png]

Eh ovo je moja tabela, i sta ja sad zelim?
Zelim ovo:
Vidite ove male sive kvadratice, eh to su textboxovi, gdje se najvise moze unijeti jedno slovo, "Y" ili "N" .
Kad ja unesem u jedan kvadratic slovo Y, vise se na tom mjestu nece nikad pojaviti text box nego ce zauvijek stajati slovo Y, tako i sa slovom N.
Ali da se podatci spremaju u datoteku.
Hajde moze kakva ideja, ili dio koda, netreba meni citav kod, samo onaj gdje se u datoteku upisuju podaci o svakom polju ove tabele!
(This post was last modified: 20-10-2009 02:46 PM by r0tring.)
20-10-2009 11:34 AM
Find all posts by this user Quote this message in a reply
tutorial Offline
Redoviti posjetitelj
**

Posts: 181
Joined: Jan 2007
Reputation: 6
Post: #4
RE: Problem (PHP Datoteke)
Ako sam dobro shvatio što želiš napraviti, trebat će ti nešto ovakvo:

- napravi datoteku 4x4* tako da između vrijednosti u retku ostaviš prazninu
- kod svakog čitanja ideš redak po redak i rastavljaš vrijednosti; ovdje bi korisna mogla biti višedimenzionalna polja: polje bi bilo oblika $array[redak_i][vrijednost_j] (i i j su neki brojevi)
- nakon toga mijenjaš vrijednosti promijenjenih polja i sve ponovno zapisuješ u datoteku

*Odnosi se na broj redaka X broj stupaca. "Stupce" odvajaj prazninama (" "). Sadržaj neke takve datoteke izgledao bi ovako:

Quote:N Y Y Y
Y N Y Y
Y Y N Y
Y Y Y N
(This post was last modified: 20-10-2009 09:07 PM by tutorial.)
20-10-2009 09:03 PM
Find all posts by this user Quote this message in a reply
r0tring Offline
Redoviti posjetitelj
**

Posts: 230
Joined: Apr 2009
Reputation: 10
Post: #5
RE: Problem (PHP Datoteke)
Quote:- nakon toga mijenjaš vrijednosti promijenjenih polja i sve ponovno zapisuješ u datoteku

Najvise mi je ovo pomoglo Palac-gore thx, a sa matricama sam na "Ti" Happy , (matrica=visedimenzionalni niz).
Btw: i ja sam vec bio poceo raditi sa matricom i sve sam uradio, osim upisivanja u datoteku, pa evo ukratko kako sam rijesio problem!

PHP fajl mi se zove tabla.php , a datoteka tabla.txt i u istom je folderu kao i PHP fajl.
U ovom slucaju radio sam sa matricom 3x3, a sadrzaj datoteke je ovakav!

Quote:y|x|n|y|x|x|x|y|x

Znaci ovdje bi matrica izgledala ovako:

Code:
y x n
y x x
x y x

Gdje znak "x" prestavlja TextBox.

Prvi dio koji sam napisao je uzimanje podataka iz datoteke a to sam odradio ovako:

PHP Code:
<?php

$filename 
"tabla.txt";
if (
file_exists($filename)) 
{
  
$ukupno count(file($filename));
  
$handle fopen("tabla.txt""r");
  for(
$i=0$i<$ukupno$i++) 
   {
    
$kanta fgets($handle4096);
    if (
$kanta != NULL || $kanta != "")
      {
        list(
$id[1][1],$id[1][2],$id[1][3],$id[2][1],$id[2][2],$id[2][3],$id[3][1],$id[3][2],$id[3][3]) = explode("|"$kanta);
      }
   }
fclose($handle);


Zatim sam napravio formu ako se pojavi koji textBox:

Code:
<body>
<div align="center"><a href="tabla.php">IndeX</a></div><br/><br/>
<form action="tabla.php?akcija=spremi" method="post" name="spremi">
<table width="300" border="1" align="center">
<tr align="center">
<td>1</td><td>2</td><td>3</td>
</tr>
<?php
for ($m=1; $m<4; $m++)
    {
       echo "<tr align='center' height='50'>";
       for ($n=1; $n<4; $n++)
           {
              echo "<td width='60'>";
              if ($id[$m][$n] == "y") {echo "Y";}
              if ($id[$m][$n] == "n") {echo "N";}
              if ($id[$m][$n] == "x") {echo "<input name='polje$m$n' type='text' size='1' maxlength='1' />";}
              echo "</td>";
           }
       echo "</tr>";
    }
?>
</table>
<br />
<div align="center"><input type="submit" name="spremi" id="button1" value="Spremi" /></div>
</form>
</body>

I ona ide upis u datoteku::

PHP Code:
<?php
if ($_GET["akcija"] == "spremi")
{
   for (
$h=1$h<4$h++)
       {
         for (
$k=1$k<4$k++)
             {
                if (
$id[$h][$k] == "x")
                    {
                      
/* Sadrzaj datoteke ce se promjeniti samo ukoliko se u textbox unese "Y" ili "N" */
                      
if ($_POST["polje$h$k"] == "y" or $_POST["polje$h$k"] == "n")
                          {
                            
$id[$h][$k] = $_POST["polje$h$k"];
                          }
                    }
              }
        }

$novi_u $id[1][1]."|".$id[1][2]."|".$id[1][3]."|".$id[2][1]."|".$id[2][2]."|".$id[2][3]."|".$id[3][1]."|".$id[3][2]."|".$id[3][3];
    
$dat "tabla.txt";
$handle fopen($dat'w') or die("Datoteka se nemoze otvoriti");
fwrite($handle$novi_u);
fclose($handle);
echo 
"<meta http-equiv='REFRESH' content='0; url=tabla.php'>";
//kraj upisa
}
?>

U textBoxove unosite "y" ili "n" ali pri ispisu PHP ce ispisati "Y" ili "N".
I to je to, ako kome bude trebao citav php kod neka se javi! Palac-gore

BtW: Thx >tutorial< za male (velike) ideje! Happy
(This post was last modified: 21-10-2009 10:48 AM by r0tring.)
21-10-2009 09:07 AM
Find all posts by this user Quote this message in a reply
tutorial Offline
Redoviti posjetitelj
**

Posts: 181
Joined: Jan 2007
Reputation: 6
Post: #6
RE: Problem (PHP Datoteke)
scroler Wrote:Najvise mi je ovo pomoglo Palac-gore thx, a sa matricama sam na "Ti" Happy , (matrica=visedimenzionalni niz).

Da sam to samo prije znao. Mislio ti to objasniti pomoću matrica, ali nisam bio siguran znaš li ih. Happy

scroler Wrote:BtW: Thx >tutorial< za male (velike) ideje! Happy

Nema na čemu. Namigivanje Drago mi je da sam uspio pomoći.
(This post was last modified: 21-10-2009 01:51 PM by tutorial.)
21-10-2009 01:48 PM
Find all posts by this user Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)