php.lv forumi: A litle Problem - php.lv forumi

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

A litle Problem problema ar scriptu

#1 User is offline   realfun 

  • Māceklis
  • Pip
  • Group: Reģistrētie lietotāji
  • Posts: 13
  • Joined: 2010.01.26

Posted 2010.03.09 16:50

Es esmu izveidojis shadu scriptu
 <?php
//Pieslēgšanās datubāzei

	$db_host = 'localhost';
	$db_user = 'root';
	$db_password = 'real112';
	$db_name = 'sistema';

$connection = @mysql_connect($db_host, $db_user, $db_password) or die(mysql_error());
mysql_select_db($db_name, $connection);
mysql_query("SET NAMES utf8");
//Ievietošana datubazē
$sql="INSERT INTO viesene (vards, lapa, zinja)
VALUES
('$_POST[vards]','$_POST[lapa]','$_POST[zinja]')";

if (!mysql_query($sql,$connection))
		
		echo "<span class='ok'>Pievienots</span><br />";
	else
	{
		echo "<span class='error'>Kāds lauks palika tukšs!</span><br />";
	}

//Izvilkšana
$result = mysql_query("SELECT * FROM viesene");

while($row = mysql_fetch_array($result))
  {
  echo "<br>";
  echo "<br>" . $row['vards'] . "</td>";
  echo "<br>" . $row['lapa'] . "</td>";
  echo "<br>" . $row['zinja'] . "</td>";
  echo "</br>";
  }

mysql_close($connection)
?>



<form method="post" action="">
Vards: <br />
<input type="text" name="vards"><br />
majaslapa: <br />
<input type="text" name="lapa"><br />
Vestule: <br />
<textarea name="zinja" cols="60" rows="10"></textarea><br />
<input type="submit" value="pievienot">
</form> 

itka viss ok vinjsh ievada bazee un izvada bet ka lapu refresho vinjsh atkal izvada to pas un ta visu laiku

CREATE TABLE `sistema`.`viesene` (
`id` INT NOT NULL AUTO_INCREMENT ,
`vards` VARCHAR( 255 ) NOT NULL ,
`lapa` VARCHAR( 255 ) NOT NULL ,
`zinja` TEXT NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = InnoDB;


reku msql kods ja gadijuma vesapratat ludzu palidzat ja varat izlabojat ja ne ludzu pasakat kapec ta ir!

nevarētu but vaina ar to action?

This post has been edited by realfun: 2010.03.09 16:53


#2 User is offline   2easy 

  • Koda dievs
  • PipPipPipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 2,006
  • Joined: 2009.10.02

Posted 2010.03.09 17:11

lai pēc refreša pa jaunam netiktu sūtīti dati, pēc inserta vajag uztaisīt redirect uz esošo lapu (vai uz "vieseni", ja tā un pievienošana ir dažādos failos vai adresēs)
header('Location: ' . $_SERVER['REQUEST_URI']);

This post has been edited by 2easy: 2010.03.09 17:13


#3 User is offline   mounkuls 

  • Daudzsološais profiņš
  • PipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 567
  • Joined: 2007.12.28

Posted 2010.03.09 17:31

Un vēlams URL vēl klāt piekabināt randskaitli, savādāk ej nu sazini vai ar kešoto nesaber pilnu bāzi kā no ložmetēja:)
Un vēl tai kodā neredzu ka čekotu vispār ir vai nav post dati un tad jau attiecīgi raksta bāzē vai tikai izvada tekstus un formu.
Vēl ieteikums likt bāzē arī ieraksta laiku, var noderēt.

This post has been edited by mounkuls: 2010.03.09 17:36


#4 User is offline   realfun 

  • Māceklis
  • Pip
  • Group: Reģistrētie lietotāji
  • Posts: 13
  • Joined: 2010.01.26

Posted 2010.03.09 18:58

ok tnx par ieteikumu bet man met eror lapu ka ielieku to redirect! bet iespejams ka pats nepareiz kaut ko izdariju japarskata!

#5 User is offline   rATRIJS 

  • Es programmēju HTML
  • PipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 888
  • Joined: 2008.11.23

Posted 2010.03.09 19:03

Ljauj mineet - headers already sent? ^_^
Te ir ļoti elegants uz zinošs paraksts kas uzspridzina tavu prātu!!!

#6 User is offline   2easy 

  • Koda dievs
  • PipPipPipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 2,006
  • Joined: 2009.10.02

Posted 2010.03.09 20:00

droši vien bezgalīgais redirect ;)
ieliec tajā formā darbību
<input type="hidden" name="action" value="pievienot" />

un pievienošanu veic tikai tad, kad atnāk forma ar attiecīgo darbību
if ($_POST['action'] == 'pievienot') {
    ...  // insert in db

    un beigās redirect
}


droši vien kodē savu pirmo formu, ja? ;)

This post has been edited by 2easy: 2010.03.09 20:01


#7 User is offline   realfun 

  • Māceklis
  • Pip
  • Group: Reģistrētie lietotāji
  • Posts: 13
  • Joined: 2010.01.26

Posted 2010.03.10 11:25

jap! tnx

#8 User is offline   realfun 

  • Māceklis
  • Pip
  • Group: Reģistrētie lietotāji
  • Posts: 13
  • Joined: 2010.01.26

Posted 2010.03.10 11:38

aa un jaa man vinjš man met tagad erroru

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\mans\index.php:23) in C:\xampp\htdocs\mans\index.php on line 40

un tapat visu laiku ar refreshu met bazee iekšā un velk arā!

#9 User is offline   2easy 

  • Koda dievs
  • PipPipPipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 2,006
  • Joined: 2009.10.02

Posted 2010.03.10 12:25

njaa ar topika nopinošana ir par maz :D:D:D
http://php.lv/f/topi...s-already-sent/

#10 User is offline   php newbie 

  • Daudzsološais profiņš
  • PipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 119
  • Joined: 2010.02.26

Posted 2010.03.10 20:07

un neaizmirsti par aizsardzību no sql injekcijas un xss

#11 User is offline   realfun 

  • Māceklis
  • Pip
  • Group: Reģistrētie lietotāji
  • Posts: 13
  • Joined: 2010.01.26

Posted 2010.03.10 22:28

Eu bet ja es piemeram to dazi taissitu atseviska skripta un pectam palaistu ar fopen nevareetu sanaakt?
aa un ar fopen var atvert php vailus?

This post has been edited by realfun: 2010.03.10 22:32


#12 User is offline   thesnarkie 

  • Daudzsološais profiņš
  • PipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 194
  • Joined: 2009.06.01

Posted 2010.03.10 22:33

Vai vieglāk nebūtu to, ko tu tur gribi panākt izdarīt ar jquery?

This post has been edited by thesnarkie: 2010.03.10 22:34


#13 User is offline   2easy 

  • Koda dievs
  • PipPipPipPipPip
  • Group: Reģistrētie lietotāji
  • Posts: 2,006
  • Joined: 2009.10.02

Posted 2010.03.11 00:02

View Postphp newbie, on 2010.03.10 20:07, said:

un neaizmirsti par aizsardzību no sql injekcijas un xss

lai varētu aizmirst, vispirms tas ir jāzin :D:D:D

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic