Проблем с един скрипт за база данни!

maxaffey

Registered
Имам два скрипта които при изпълнението си създават и почват да променят незнайно защо един файл а не използват създадения от мен примерно "1.inc" а при изпълнението си скрипта създава нов файл който е само "1" но странното е че си съдържа всички данни и то правилно, но е защитен и немога да го изтрия и сваля, но като пак изпълнявам скрипта си записва новите данни в него!!! :( :( :(


ето го първия файл със скрипта в него:

Код:
<form name="form1" method="post" action="dostavkaz.php">
<p align="center">
  <select name="stoka1" id="stoka1">
<?php

$n=file("nomera.inc");
$s=file("stoki.inc");
$output = "";

foreach($n as $num){list(,$stok) = each($s);
$output.="<option value='$num'>$stok</option>";
}
echo($output);


?>
  </select> 
  <label></label>
  <label>
  <input name="kolichestvo1" type="text" id="kolichestvo1" size="5" maxlength="3" />
  </label>
</p>
<p align="center">
  <label>
  <input type="submit" name="Submit" value="ЗАПИШИ">
  </label>
</p>
</form>



ето го и dostavkaz.php:

Код:
<?php

$stoka1=$HTTP_POST_VARS['stoka1'];
$kolichestvo1=$HTTP_POST_VARS['kolichestvo1'];

$fp = fopen ("kol/$stoka1.inc","r"); 
$pr= fgets($fp,999); 
fclose($fp); 
$pr=$pr+$kolichestvo1; 
$fp = fopen ("kol/$stoka1.inc","w"); 
fwrite($fp, $pr); 
fclose($fp); 

echo $pr;

?>

като в

nomera.inc има следната подредва:

1
2
3
4
5


в stoki.inc има следната подредва:

стока 1
стока 2
стока 3
стока 4
стока 5

като от първия файл взима визуализацията и подрежда данните от stoki.inc а при изпълнението взима стойността на nomera.inc и така като ги преработи в dostavkaz.php като предположим че сме избрали "стока 1" значи взима стойността "1" и така "$stoka" приема стойността на "1" и би трябвало като се изпълнифункцията " fopen ("kol/$stoka1.inc","r"); "
да отвори файл "kol/1.inc" и при записа "fopen ("kol/$stoka1.inc","w"); " трябва да отваря "kol/1.inc" а и в двата случая си отваря файл "1" който даже няма и вид и немога да го манипулирам без този скрипт!!!

Малко ми се вижда страннода се разгадае тази загатка иаз самия достатъчносе борихс нея, но за съжаление без резултат :( !!!

Ако някой има идея защо се получава цялата тази глупост щесъм му много благодарен ако помогне и благодаря предварително!!!
 
Файла 1 не е защитен.
Просто е създаден от скрипта и само той е негов собственник.
Тоест само файла който го е създал има право да работи с него(да го трие, променя и т.н.).
Дори през ФТП не можеш да го променяш.
Linux проблеми :) .
Относно въпроса ти "защо създава файл 1 а не 1.inc" не мога да ти кажа,
а и не видях някаква грешка.




Пробвай така:
Код:
<?php 

$stoka1=$HTTP_POST_VARS['stoka1']; 
$kolichestvo1=$HTTP_POST_VARS['kolichestvo1']; 
$zapis='kol/'.$stoka1.'.inc';
$fp = fopen ($zapis,"r"); 
$pr= fgets($fp,999); 
fclose($fp); 
$pr=$pr+$kolichestvo1; 
$fp = fopen ($zapis,"w"); 
fwrite($fp, $pr); 
fclose($fp); 

echo $pr; 

?>
 
Как могада го направя защитен този файл тогава ако има начин.

Пробвах и скрипта но се получава същото нещо!!! :( :( :(
 
Защитен в смисъл да мога да го манипулирам чрез FTP, и да се получава 1.inc ,но незнам къде е грешката в скрупта, по-скоро то няма, но незнам някакво бъгче е явно!
 
хм пробвай така :
fopen ("kol/".$stoka1.".inc","r");
ама и аз невиждам някъде грешка :roll:
 
Не става пак :shock: аз си го ползвам каксто си ги създава файловете, но кофтито е че не мога да ги манипулирам чрез FTP.

както и да е мерси все пак за отделеното време.
 
ами добре ама аз никъде не видях къде създава файла ?
Да не би също нещо с chmode да има нещо.. т.е. да няма права .. нз :shock:
 
Отваря файла за четене и запис с W .

Код:
$fp = fopen ($zapis,"w");

Което значи, че маха съдържанието му и записва ново.
Не добавя!

Няма значение.
Това което ти трябва е следното.
След редовете за създаване на файла трябва да имаш и няколко реда за смяна на CHMOD (пермишъните на файла).
След като ги смениш на 0666 или 0777 вече ще можеш да работиш
с файла чрез ФТП или рез друг скрипт.


Виж това:
http://bg.php.net/manual/en/function.chmod.php

Ако нещо не ти е ясно от горния код или не работи питай.
В зависимост от настройките на сървъра може да има проблеми!




<?php

$stoka1=$HTTP_POST_VARS['stoka1'];
$kolichestvo1=$HTTP_POST_VARS['kolichestvo1'];
$zapis='kol/'.$stoka1.'.inc';
$fp = fopen ($zapis,"r");
$pr= fgets($fp,999);
fclose($fp);
$pr=$pr+$kolichestvo1;
$fp = fopen ($zapis,"w");
fwrite($fp, $pr);
fclose($fp);
chmod($zapis,0777);

echo $pr;

?>


Така трябва да е скрипта за да нямаш проблеми с правата върху файла.
Ако не стане кажи за да ти дам и друга възможност.
 

Back
Горе