Jump to content
php.lv forumi

bilžu(vairāku) pievienošana datubāze


Devils666

Recommended Posts

Sveiki, atradu šādu kodu, taču nezinu, ko darit gadijuma, kad notiek vairak apr vienu failu pievienošana...

 

Vai kāds varētu iedod nelielu piemēru, kā iesākt visu procesu?

 

 

šeit kods(nav parak garš, tapēc ieliku jau uzreiz)

<html>
<body>
<span id="sample"><input type="file" name="img[]" /></span><input id="plus" style="display:none" type="button" value="+ pievienot vel vienu bildi" onclick="plusone()">
<div id="added"></div>
<script type="text/javascript">
function byid(id)
{
if (document.getElementById)
 return (document.getElementById(id));
if (document.all)
 return document.all[id];
if (document.layers)
 return document.layers[id];
return false;
}
function remove(elt)
{
elt.parentNode.parentNode.removeChild(elt.parentNode);
}
function plusone()
{
div=document.createElement('div');
div.innerHTML='<div>'+byid('sample').innerHTML+'<input type="button" onclick="remove(this)" value="- nonemt" /></div>';
byid('added').appendChild(div);
}
if (document.body.innerHTML)
byid('plus').style['display']='inline';
</script>
</body>
</html>

Edited by Devils666
Link to comment
Share on other sites

  • Replies 31
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

1. kart NEKLIEDZ !!!!

2. sac ar to HTML formam kaa taadam

3. Sac apgut PHP pamatus

4. Pec tam pamacies par DB

5. vari megjinat velreiz pajautat

 

blin, es nekliedzu - tu kliedz :D, jau biju uztaisijis vairakas formas,

kuras pievienoju vienu bildi datubāze + reseizoaja, bet tas šoreiz man neder, vaig lai varētu pievienot vairakas bildes

ari uztaisiju jau nelielu sistemu, bet par vairaku bilzu pievienosanu - man nesanak, lai viss ietu un bez sis funkcijas sistemai nav jegas...

 

precizāk, man vaig ideju, ka to visu iesakt, vislabak kadu paraugu...

Edited by Devils666
Link to comment
Share on other sites

Ieliec kaut kādu kaunterīti. Pie katra jaunpievienotā inputa palielini to pa 1. Un pirms katra inputa izveidošanas skaties vai kaunterītis nav pārsniedzis 20.

 

Tik arī php pusē tev vajadzēs veikt salīdzināšanu, jo viss, kas ir klienta pusē, ir nedrošs...

 

php pusē, skatīties, vai nav vairāk pa 20 arī nav grūti. Pieņemu, ka tev ir failu masīvs, ja tā, tad reku analoģija ar POST:

 


<form action="" method="post" accept-charset="utf-8">
 <p>
   <input type="text" name="test[]" value="test1" />
 </p>
 <p>
   <input type="text" name="test[]" value="test2" />
 </p>
 <p>
   <input type="text" name="test[]" value="test3" />
 </p>
 <p><input type="submit" value="Continue →"></p>
</form>

<?php
echo "Text fields: " . count($_POST['test']) . "<br />";
print_r($_POST["test"]);
?>

Link to comment
Share on other sites

Nu es bija domajis, mazliet savādak

 

tam skriptam, ko ieliku sakumā, vaig uzlitk tā, lai javscripts nevaretu pievienot, piemēram vairāk par 20 reizēm...

precizāk, lai nebutu tā ka varētu kaut 1000 reizes, to pogo nospiest - "+ pievienot vel vienu bildi"

Edited by Devils666
Link to comment
Share on other sites

Nu es tak rakstīju - džavaskriptā ieliec kaunterīti. Vai tad tas ir tik grūti?

 


function plusone() {
 if(plusone.counter == undefined) {
   plusone.counter = 0;
 }

 if(plusone.counter <= 20) {
   div=document.createElement('div');
   div.innerHTML='<div>'+byid('sample').innerHTML+'<input type="button" onclick="remove(this)" value="- nonemt" /></div>';
   byid('added').appendChild(div);
   plusone.counter++;
 }
 else {
   alert('Tu pa daudz gribi!!!');
 }
}

Link to comment
Share on other sites

Vēl viens variants varētu būt:

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Multiple upload</title>

<style type="text/css">
	div#upload input.field {
		margin-top: 5px;
		display: block;
	}
</style>

<script type="text/javascript">
	var counter=1;

	function cancelEvents(e) {
		if (!e)
			e = window.event;

		e.cancelBubble = true;
		if (e.stopPropagation)
			e.stopPropagation();
	}

	function clone(element, e) {
		var dub = element.cloneNode(true);
		if (!e)
			var e = window.event;
		element['on'+e.type]=null;
		if (typeof(dub.value)!='undefined')
			dub.value='';
		element.parentNode.appendChild(dub);
		cancelEvents(e);
		return dub;
	}
</script>
</head>

<body>
<form name="upload_form" action="" method="post" enctype="multipart/form-data">
<div id="upload">
	<input type="hidden" name="MAX_FILE_SIZE" value="5242880">
	<input type="file" name="image[]" class="field" onchange="if (counter<5) {clone(this, event); counter++}">
</div>
<div style="margin-top: 5px">
	<input type="submit" name="submit_upload" value="Upload">
</div>
</form>
</body>
</html>

 

Php pusē augšupielādēšanai pamācību var apskatīties šeit: http://lv.php.net/manual/en/features.file-upload.php

Link to comment
Share on other sites

bļin, kur tu biji ātrāk? :D

jā, tas vel daudz labāks varinats, lietotāju pusei vienkāršāks, vienīgais, tad ir jauztaisa noņemšanas poga

 

Jau kādu stundu čakarejos ar resaizera meklēšanu un atradu arī:

http://www.white-hat-web-design.co.uk/articles/php-image-resizing.php

 

liekas, diezgan labs(bildes pārtaisa ļoti kvalitatīvi), tikai vai viņu varētu apvienot vairāku bilžu pievienošanai?

<?php
  if( isset($_POST['submit']) ) {
     include('SimpleImage.php');
     $image = new SimpleImage();
     $image->load($_FILES['uploaded_image']['tmp_name']);
     $image->resizeToWidth(150);
     $image->output();
  } else {
?>

  <form action="upload.php" method="post" enctype="multipart/form-data">
     <input type="file" name="uploaded_image" />
     <input type="submit" name="submit" value="Upload" />
  </form>

<?php

mēģināju apvienot ar savu pievienošana kodu, bet neveiksmīgi

 

mans kods (nav vel pabeigts):

http://paste.php.lv/d3c4d573a9415e07ead00ed2a5e47b5b/nonum

 

 

+ domāju ka šis topiks vēlāk varētu noderēt citiem, kas ko līdzīgu gribēs taisīt

Edited by Devils666
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...