Я недавно работал над этим. Попробуйте эту функцию:
/**
* @return array an array of your files uploaded.
*/
private function _upload_files($field='userfile'){
$files = array();
foreach( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
или
в контроллере:
public function do_upload(){
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
//...
$this->load->library('upload',$config);
if ( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
[111] или
[112] в контроллере:
[113] Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES['images']) {
$images= $this->_upload_files('images');
print_r($images);
}
}
Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES[$field] as $key => $all )
foreach( $all as $i => $val )
$files[$i][$key] = $val;
$files_uploaded = array();
for ($i=0; $i < count($files); $i++) {
Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
или
в контроллере:
public function do_upload(){
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
//...
$this->load->library('upload',$config);
if ( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
[111] или
[112] в контроллере:
[113] Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES['images']) {
$images= $this->_upload_files('images');
print_r($images);
}
}
Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES[$field] = $files[$i];
if ($this->upload->do_upload($field))
$files_uploaded[$i] = $this->upload->data($files);
else
$files_uploaded[$i] = null;
}
return $files_uploaded;
}
в вашем случае:
или
в контроллере:
public function do_upload(){
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
//...
$this->load->library('upload',$config);
if ( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
[111] или
[112] в контроллере:
[113] Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES['images']) {
$images= $this->_upload_files('images');
print_r($images);
}
}
Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
Я попробую свой снимок.
РЕДАКТИРОВАТЬ: Однако через секунду, чтобы избежать использования глобальной переменной, лучше сделать следующее
$(document).ready(function() {
$("#toggle_value").click((function(){
var counter = 0;
return function()
{
$("#div" + counter).hide("fast");
counter = (counter % 3) + 1;
$("#div" + counter).show("fast");
}
})());
});
Вы должны добавить счетчик в функцию.
$(document).ready(function() {
var count = 0;
$("#toggle_value").click(function(){
if (count == 0) {
$("#div1").show("fast");
$('#div2').hide();
count++;
}
else if (count == 1) {
$("#div2").show("fast");
...
count++;
}
else if (count == 2) {
$("#div3").show("fast");
....
count++;
}
else {
$('div').hide();
count=0;
}
});
});
Как насчет этого
рабочего примера здесь - добавьте / edit к URL-адресу, чтобы отредактировать код
$('html').addClass('js'); // prevent hiding divs on DOM ready from 'flashing'
$(function() {
var counter = 1;
$('#toggle_value').click(function() {
$('div','#container')
// to stop current animations - clicking really fast could originally
// cause more than one div to show
.stop()
// hide all divs in the container
.hide()
// filter to only the div in question
.filter( function() { return this.id.match('div' + counter); })
// show the div
.show('fast');
// increment counter or reset to 1 if counter equals 3
counter == 3? counter = 1 : counter++;
// prevent default anchor click event
return false;
});
});
и HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<title>Div Example</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<style type="text/css" media="screen">
body { background-color: #fff; font: 16px Helvetica, Arial; color: #000; }
.display { width:300px; height:200px; border: 2px solid #000; }
.js .display { display:none; }
</style>
</head>
<body>
<div class="toggle_button">
<a href="#" id="toggle_value">Toggle</a>
</div>
<br/>
<div id='container'>
<div id='div1' class='display' style="background-color: red;">
div1
</div>
<div id='div2' class='display' style="background-color: green;">
div2
</div>
<div id='div3' class='display' style="background-color: blue;">
div3
</div>
<div>
</body>
</html>
Это может быть легко завернутый в плагин
Мое решение немного отличается - я бы сделал это в зависимости от состояния div в текущий момент (по щелчку). См. Ниже, что я имею в виду.
$(document).ready(function() {
$("#toggle_value").click(function(){
if ($("#div1).is(':visible')) { // Second click
// Hide all divs and show d2
$("#div1").hide();
$("#div2").show("fast");
$("#div3").hide();
$("#div4").hide();
} else if ($("#div2").is(':visible')) { // Third click
// follow above example for hiding all and showing div3
} else if ($("#div3").is(':visible')) { // Fouth click
// follow above example for hiding all and showing div1
} else { // first click
// All divs should be hidden first. Show div1 only.
$("#div1").show("fast");
}
});
});
Предупреждаю - я не тестировал этот код :) На основе следующего для определения видимости: http://docs.jquery.com/Frequent_Asked_Questions#How_do_I_determine_the_state_of_a_toggled_element.3F
Надеюсь, это поможет
Простым способом было бы ввести переменную, которая отслеживает клики, примерно так:
var tracker = 0;
$(document).ready(function() {
$("#toggle_value").click(function(){
if(tracker == 0)
{
$("#div1").show("fast");
}else if(tracker ==1)
etc etc
tracker ++;
});
});
Я предпочитаю использовать " filter "и немного упростить работу со счетчиком:
(function () {
var divCounter = 0, divs;
$(function () {
divs = $('#div1, #div2, #div3');
$('#toggle_value').click(function (e) {
divs.hide() // hide other divs
.filter(function (index) { return index == divCounter % 3; }) // select appropriate div
.show('fast'); // and show it
divCounter++;
});
});
})();
Я бы, вероятно, сделал что-то вроде: (Ниже предполагается, что все ваши
$(document).ready(function() {
var $allDivs = $("#container > div");
var counter = 0;
$("#container > div").click(function(){
counter = counter < $allDivs.length - 1 ? counter + 1 : 0;
$allDivs.not(":eq("+counter +")").hide("fast");
$allDivs.eq(counter).show("fast");
});
});
var c = 1;
$("#toggle_value").click(function()
{
$("#div" + c).hide("fast");
$("#div" + ++c).show("fast");
if (c > 3) c=1;
});
$("#toggle_value").click(function()
{
$("#div" + (++c) % 3).show().siblings().hide();
}
Функция .toggle в jQuery принимает любое количество функций аргументов, поэтому проблема уже решена. См. Документацию в разделе "События".