/sandbox/www/adminer/index.php
PHP | 1632 lines | 1622 code | 3 blank | 7 comment | 9 complexity | caefc08dffe676bf2f0f847ea5d2a29f MD5 | raw file
Possible License(s): BSD-3-Clause, Apache-2.0
- <?php
- /** Adminer - Compact database management
- * @link http://www.adminer.org/
- * @author Jakub Vrana, http://www.vrana.cz/
- * @copyright 2007 Jakub Vrana
- * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
- * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other)
- * @version 3.5.1
- */error_reporting(6135);$fc=!ereg('^(unsafe_raw)?$',ini_get("filter.default"));if($fc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$W){$dg=filter_input_array(constant("INPUT$W"),FILTER_UNSAFE_RAW);if($dg)$$W=$dg;}}if(isset($_GET["file"])){header("Expires: ".gmdate("D, d M Y H:i:s",time()+365*24*60*60)." GMT");if($_GET["file"]=="favicon.ico"){header("Content-Type: image/x-icon");echo
- base64_decode("AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA/wBhTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAERERAAAAAAETMzEQAAAAATERExAAAAABMRETEAAAAAExERMQAAAAATERExAAAAABMRETEAAAAAEzMzMREREQATERExEhEhABEzMxEhEREAAREREhERIRAAAAARIRESEAAAAAESEiEQAAAAABEREQAAAAAAAAAAD//9UAwP/VAIB/AACAf/AAgH+kAIB/gACAfwAAgH8AAIABAACAAf8AgAH/AMAA/wD+AP8A/wAIAf+B1QD//9UA");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo'body{color:#000;background:#fff;font:90%/1.25 Verdana,Arial,Helvetica,sans-serif;margin:0;}a{color:blue;}a:visited{color:navy;}a:hover{color:red;}a.text{text-decoration:none;}h1{font-size:150%;margin:0;padding:.8em 1em;border-bottom:1px solid #999;font-weight:normal;color:#777;background:#eee;}h2{font-size:150%;margin:0 0 20px -18px;padding:.8em 1em;border-bottom:1px solid #000;color:#000;font-weight:normal;background:#ddf;}h3{font-weight:normal;font-size:130%;margin:1em 0 0;}form{margin:0;}table{margin:1em 20px 0 0;border:0;border-top:1px solid #999;border-left:1px solid #999;font-size:90%;}td,th{border:0;border-right:1px solid #999;border-bottom:1px solid #999;padding:.2em .3em;}th{background:#eee;text-align:left;}thead th{text-align:center;}thead td,thead th{background:#ddf;}fieldset{display:inline;vertical-align:top;padding:.5em .8em;margin:.8em .5em 0 0;border:1px solid #999;}p{margin:.8em 20px 0 0;}img{vertical-align:middle;border:0;}td img{max-width:200px;max-height:200px;}code{background:#eee;}tbody tr:hover td,tbody tr:hover th{background:#eee;}pre{margin:1em 0 0;}input[type=image]{vertical-align:middle;}.version{color:#777;font-size:67%;}.js .hidden,.nojs .jsonly{display:none;}.js .column{position:absolute;background:#ddf;padding:.3em 1ex .3em 0;margin-top:-.3em;}.nowrap td,.nowrap th,td.nowrap{white-space:pre;}.wrap td{white-space:normal;}.error{color:red;background:#fee;}.error b{background:#fff;font-weight:normal;}.message{color:green;background:#efe;}.error,.message{padding:.5em .8em;margin:1em 20px 0 0;}.char{color:#007F00;}.date{color:#7F007F;}.enum{color:#007F7F;}.binary{color:red;}.odd td{background:#F5F5F5;}.js .checked td,.js .checked th{background:#ddf;}.time{color:silver;font-size:70%;}.function{text-align:right;}.number{text-align:right;}.datetime{text-align:right;}.type{width:15ex;width:auto\\9;}.options select{width:20ex;width:auto\\9;}.active{font-weight:bold;}.sqlarea{width:98%;}.icon{width:18px;height:18px;}#menu{position:absolute;margin:10px 0 0;padding:0 0 30px 0;top:2em;left:0;width:19em;white-space:nowrap;}#menu p{padding:.8em 1em;margin:0;border-bottom:1px solid #ccc;}#dbs{overflow:hidden;}#logins,#tables{overflow:auto;}#logins a,#tables a{background:#fff;}#content{margin:2em 0 0 21em;padding:10px 20px 20px 0;}#lang{position:absolute;top:0;left:0;line-height:1.8em;padding:.3em 1em;}#breadcrumb{white-space:nowrap;position:absolute;top:0;left:21em;background:#eee;height:2em;line-height:1.8em;padding:0 1em;margin:0 0 0 -18px;}#h1{color:#777;text-decoration:none;font-style:italic;}#version{font-size:67%;color:red;}#schema{margin-left:60px;position:relative;-moz-user-select:none;-webkit-user-select:none;}#schema .table{border:1px solid silver;padding:0 2px;cursor:move;position:absolute;}#schema .references{position:absolute;}.rtl h2{margin:0 -18px 20px 0;}.rtl p,.rtl table,.rtl .error,.rtl .message{margin:1em 0 0 20px;}.rtl #content{margin:2em 21em 0 0;padding:10px 0 20px 20px;}.rtl #breadcrumb{left:auto;right:21em;margin:0 -18px 0 0;}.rtl #lang,.rtl #menu{left:auto;right:0;}@media print{#lang,#menu{display:none;}#content{margin-left:1em;}#breadcrumb{left:1em;}.nowrap td,.nowrap th,td.nowrap{white-space:normal;}}';}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");?>function
- toggle(id){var
- el=document.getElementById(id);el.className=(el.className=='hidden'?'':'hidden');return true;}function
- cookie(assign,days){var
- date=new
- Date();date.setDate(date.getDate()+days);document.cookie=assign+'; expires='+date;}function
- verifyVersion(){cookie('adminer_version=0',1);var
- script=document.createElement('script');script.src=location.protocol+'//www.adminer.org/version.php';document.body.appendChild(script);}function
- selectValue(select){var
- selected=select.options[select.selectedIndex];return((selected.attributes.value||{}).specified?selected.value:selected.text);}function
- parentTag(el,tag){var
- re=new
- RegExp('^'+tag+'$','i');while(!re.test(el.tagName)){el=el.parentNode;}return el;}function
- trCheck(el){var
- tr=parentTag(el,'tr');tr.className=tr.className.replace(/(^|\s)checked(\s|$)/,'$2')+(el.checked?' checked':'');}function
- formCheck(el,name){var
- elems=el.form.elements;for(var
- i=0;i<elems.length;i++){if(name.test(elems[i].name)){elems[i].checked=el.checked;trCheck(elems[i]);}}}function
- tableCheck(){var
- tables=document.getElementsByTagName('table');for(var
- i=0;i<tables.length;i++){if(/(^|\s)checkable(\s|$)/.test(tables[i].className)){var
- trs=tables[i].getElementsByTagName('tr');for(var
- j=0;j<trs.length;j++){trCheck(trs[j].firstChild.firstChild);}}}}function
- formUncheck(id){var
- el=document.getElementById(id);el.checked=false;trCheck(el);}function
- formChecked(el,name){var
- checked=0;var
- elems=el.form.elements;for(var
- i=0;i<elems.length;i++){if(name.test(elems[i].name)&&elems[i].checked){checked++;}}return checked;}function
- tableClick(event){var
- click=(!window.getSelection||getSelection().isCollapsed);var
- el=event.target||event.srcElement;while(!/^tr$/i.test(el.tagName)){if(/^(table|a|input|textarea)$/i.test(el.tagName)){if(el.type!='checkbox'){return;}checkboxClick(event,el);click=false;}el=el.parentNode;}el=el.firstChild.firstChild;if(click){el.click&&el.click();el.onclick&&el.onclick();}trCheck(el);}var
- lastChecked;function
- checkboxClick(event,el){if(!el.name){return;}if(event.shiftKey&&(!lastChecked||lastChecked.name==el.name)){var
- checked=(lastChecked?lastChecked.checked:true);var
- inputs=parentTag(el,'table').getElementsByTagName('input');var
- checking=!lastChecked;for(var
- i=0;i<inputs.length;i++){var
- input=inputs[i];if(input.name===el.name){if(checking){input.checked=checked;trCheck(input);}if(input===el||input===lastChecked){if(checking){break;}checking=true;}}}}else{lastChecked=el;}}function
- setHtml(id,html){var
- el=document.getElementById(id);if(el){if(html==undefined){el.parentNode.innerHTML=' ';}else{el.innerHTML=html;}}}function
- nodePosition(el){var
- pos=0;while(el=el.previousSibling){pos++;}return pos;}function
- pageClick(href,page,event){if(!isNaN(page)&&page){href+=(page!=1?'&page='+(page-1):'');location.href=href;}}function
- menuOver(el){el.style.overflow='visible';}function
- menuOut(el){el.style.overflow='auto';}function
- selectAddRow(field){field.onchange=function(){selectFieldChange(field.form);};field.onchange();var
- row=field.parentNode.cloneNode(true);var
- selects=row.getElementsByTagName('select');for(var
- i=0;i<selects.length;i++){selects[i].name=selects[i].name.replace(/[a-z]\[\d+/,'$&1');selects[i].selectedIndex=0;}var
- inputs=row.getElementsByTagName('input');if(inputs.length){inputs[0].name=inputs[0].name.replace(/[a-z]\[\d+/,'$&1');inputs[0].value='';inputs[0].className='';}field.parentNode.parentNode.appendChild(row);}function
- columnMouse(el,className){var
- spans=el.getElementsByTagName('span');for(var
- i=0;i<spans.length;i++){if(/column/.test(spans[i].className)){spans[i].className='column'+(className||'');}}}function
- selectSearch(name){var
- el=document.getElementById('fieldset-search');el.className='';var
- divs=el.getElementsByTagName('div');for(var
- i=0;i<divs.length;i++){var
- div=divs[i];if(/select/i.test(div.firstChild.tagName)&&selectValue(div.firstChild)==name){break;}}if(i==divs.length){div.firstChild.value=name;div.firstChild.onchange();}div.lastChild.focus();}function
- bodyKeydown(event,button){var
- target=event.target||event.srcElement;if(event.ctrlKey&&(event.keyCode==13||event.keyCode==10)&&!event.altKey&&!event.metaKey&&/select|textarea|input/i.test(target.tagName)){target.blur();if(button){target.form[button].click();}else{target.form.submit();}return false;}return true;}function
- editingKeydown(event){if((event.keyCode==40||event.keyCode==38)&&event.ctrlKey&&!event.altKey&&!event.metaKey){var
- target=event.target||event.srcElement;var
- sibling=(event.keyCode==40?'nextSibling':'previousSibling');var
- el=target.parentNode.parentNode[sibling];if(el&&(/^tr$/i.test(el.tagName)||(el=el[sibling]))&&/^tr$/i.test(el.tagName)&&(el=el.childNodes[nodePosition(target.parentNode)])&&(el=el.childNodes[nodePosition(target)])){el.focus();}return false;}if(event.shiftKey&&!bodyKeydown(event,'insert')){eventStop(event);return false;}return true;}function
- functionChange(select){var
- input=select.form[select.name.replace(/^function/,'fields')];if(selectValue(select)){if(input.origMaxLength===undefined){input.origMaxLength=input.maxLength;}input.removeAttribute('maxlength');}else
- if(input.origMaxLength>=0){input.maxLength=input.origMaxLength;}}function
- ajax(url,callback,data){var
- request=(window.XMLHttpRequest?new
- XMLHttpRequest():(window.ActiveXObject?new
- ActiveXObject('Microsoft.XMLHTTP'):false));if(request){request.open((data?'POST':'GET'),url);if(data){request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');}request.setRequestHeader('X-Requested-With','XMLHttpRequest');request.onreadystatechange=function(){if(request.readyState==4){callback(request);}};request.send(data);}return request;}function
- ajaxSetHtml(url){return ajax(url,function(request){if(request.status){var
- data=eval('('+request.responseText+')');for(var
- key
- in
- data){setHtml(key,data[key]);}}});}function
- selectDblClick(td,event,text){if(/input|textarea/i.test(td.firstChild.tagName)){return;}var
- original=td.innerHTML;var
- input=document.createElement(text?'textarea':'input');input.onkeydown=function(event){if(!event){event=window.event;}if(event.keyCode==27&&!(event.ctrlKey||event.shiftKey||event.altKey||event.metaKey)){td.innerHTML=original;}};var
- pos=event.rangeOffset;var
- value=td.firstChild.alt||td.textContent||td.innerText;input.style.width=Math.max(td.clientWidth-14,20)+'px';if(text){var
- rows=1;value.replace(/\n/g,function(){rows++;});input.rows=rows;}if(value=='\u00A0'||td.getElementsByTagName('i').length){value='';}if(document.selection){var
- range=document.selection.createRange();range.moveToPoint(event.clientX,event.clientY);var
- range2=range.duplicate();range2.moveToElementText(td);range2.setEndPoint('EndToEnd',range);pos=range2.text.length;}td.innerHTML='';td.appendChild(input);input.focus();if(text==2){return ajax(location.href+'&'+encodeURIComponent(td.id)+'=',function(request){if(request.status){input.value=request.responseText;input.name=td.id;}});}input.value=value;input.name=td.id;input.selectionStart=pos;input.selectionEnd=pos;if(document.selection){var
- range=document.selection.createRange();range.moveEnd('character',-input.value.length+pos);range.select();}}function
- eventStop(event){if(event.stopPropagation){event.stopPropagation();}else{event.cancelBubble=true;}}var
- jushRoot=location.protocol + '//www.adminer.org/static/';function
- bodyLoad(version){if(jushRoot){var
- link=document.createElement('link');link.rel='stylesheet';link.type='text/css';link.href=jushRoot+'jush.css';document.getElementsByTagName('head')[0].appendChild(link);var
- script=document.createElement('script');script.src=jushRoot+'jush.js';script.onload=function(){if(window.jush){jush.create_links=' target="_blank" rel="noreferrer"';jush.urls.sql_sqlset=jush.urls.sql[0]=jush.urls.sqlset[0]=jush.urls.sqlstatus[0]='http://dev.mysql.com/doc/refman/'+version+'/en/$key';var
- pgsql='http://www.postgresql.org/docs/'+version+'/static/';jush.urls.pgsql_pgsqlset=jush.urls.pgsql[0]=pgsql+'$key';jush.urls.pgsqlset[0]=pgsql+'runtime-config-$key.html#GUC-$1';if(window.jushLinks){jush.custom_links=jushLinks;}jush.highlight_tag('code',0);}};script.onreadystatechange=function(){if(/^(loaded|complete)$/.test(script.readyState)){script.onload();}};document.body.appendChild(script);}}function
- formField(form,name){for(var
- i=0;i<form.length;i++){if(form[i].name==name){return form[i];}}}function
- typePassword(el,disable){try{el.type=(disable?'text':'password');}catch(e){}}function
- loginDriver(driver){var
- trs=parentTag(driver,'table').rows;for(var
- i=1;i<trs.length-1;i++){trs[i].className=(/sqlite/.test(driver.value)?'hidden':'');}}function
- textareaKeydown(target,event){if(!event.shiftKey&&!event.altKey&&!event.ctrlKey&&!event.metaKey){if(event.keyCode==9){if(target.setSelectionRange){var
- start=target.selectionStart;var
- scrolled=target.scrollTop;target.value=target.value.substr(0,start)+'\t'+target.value.substr(target.selectionEnd);target.setSelectionRange(start+1,start+1);target.scrollTop=scrolled;return false;}else
- if(target.createTextRange){document.selection.createRange().text='\t';return false;}}if(event.keyCode==27){var
- els=target.form.elements;for(var
- i=1;i<els.length;i++){if(els[i-1]==target){els[i].focus();break;}}return false;}}return true;}function
- selectFieldChange(form){var
- ok=(function(){var
- inputs=form.getElementsByTagName('input');for(var
- i=0;i<inputs.length;i++){if(inputs[i].value&&/^fulltext/.test(inputs[i].name)){return true;}}var
- ok=form.limit.value;var
- selects=form.getElementsByTagName('select');var
- group=false;var
- columns={};for(var
- i=0;i<selects.length;i++){var
- select=selects[i];var
- col=selectValue(select);var
- match=/^(where.+)col\]/.exec(select.name);if(match){var
- op=selectValue(form[match[1]+'op]']);var
- val=form[match[1]+'val]'].value;if(col
- in
- indexColumns&&(!/LIKE|REGEXP/.test(op)||(op=='LIKE'&&val.charAt(0)!='%'))){return true;}else
- if(col||val){ok=false;}}if((match=/^(columns.+)fun\]/.exec(select.name))){if(/^(avg|count|count distinct|group_concat|max|min|sum)$/.test(col)){group=true;}var
- val=selectValue(form[match[1]+'col]']);if(val){columns[col&&col!='count'?'':val]=1;}}if(col&&/^order/.test(select.name)){if(!(col
- in
- indexColumns)){ok=false;}break;}}if(group){for(var
- col
- in
- columns){if(!(col
- in
- indexColumns)){ok=false;}}}return ok;})();setHtml('noindex',(ok?'':'!'));}var
- added='.',rowCount;function
- delimiterEqual(val,a,b){return(val==a+'_'+b||val==a+b||val==a+b.charAt(0).toUpperCase()+b.substr(1));}function
- idfEscape(s){return s.replace(/`/,'``');}function
- editingNameChange(field){var
- name=field.name.substr(0,field.name.length-7);var
- type=formField(field.form,name+'[type]');var
- opts=type.options;var
- candidate;var
- val=field.value;for(var
- i=opts.length;i--;){var
- match=/(.+)`(.+)/.exec(opts[i].value);if(!match){if(candidate&&i==opts.length-2&&val==opts[candidate].value.replace(/.+`/,'')&&name=='fields[1]'){return;}break;}var
- table=match[1];var
- column=match[2];var
- tables=[table,table.replace(/s$/,''),table.replace(/es$/,'')];for(var
- j=0;j<tables.length;j++){table=tables[j];if(val==column||val==table||delimiterEqual(val,table,column)||delimiterEqual(val,column,table)){if(candidate){return;}candidate=i;break;}}}if(candidate){type.selectedIndex=candidate;type.onchange();}}function
- editingAddRow(button,allowed,focus){if(allowed&&rowCount>=allowed){return false;}var
- match=/(\d+)(\.\d+)?/.exec(button.name);var
- x=match[0]+(match[2]?added.substr(match[2].length):added)+'1';var
- row=parentTag(button,'tr');var
- row2=row.cloneNode(true);var
- tags=row.getElementsByTagName('select');var
- tags2=row2.getElementsByTagName('select');for(var
- i=0;i<tags.length;i++){tags2[i].name=tags[i].name.replace(/([0-9.]+)/,x);tags2[i].selectedIndex=tags[i].selectedIndex;}tags=row.getElementsByTagName('input');tags2=row2.getElementsByTagName('input');var
- input=tags2[0];for(var
- i=0;i<tags.length;i++){if(tags[i].name=='auto_increment_col'){tags2[i].value=x;tags2[i].checked=false;}tags2[i].name=tags[i].name.replace(/([0-9.]+)/,x);if(/\[(orig|field|comment|default)/.test(tags[i].name)){tags2[i].value='';}if(/\[(has_default)/.test(tags[i].name)){tags2[i].checked=false;}}tags[0].onchange=function(){editingNameChange(tags[0]);};row.parentNode.insertBefore(row2,row.nextSibling);if(focus){input.onchange=function(){editingNameChange(input);};input.focus();}added+='0';rowCount++;return true;}function
- editingRemoveRow(button){var
- field=formField(button.form,button.name.replace(/drop_col(.+)/,'fields$1[field]'));field.parentNode.removeChild(field);parentTag(button,'tr').style.display='none';return true;}var
- lastType='';function
- editingTypeChange(type){var
- name=type.name.substr(0,type.name.length-6);var
- text=selectValue(type);for(var
- i=0;i<type.form.elements.length;i++){var
- el=type.form.elements[i];if(el.name==name+'[length]'&&!((/(char|binary)$/.test(lastType)&&/(char|binary)$/.test(text))||(/(enum|set)$/.test(lastType)&&/(enum|set)$/.test(text)))){el.value='';}if(lastType=='timestamp'&&el.name==name+'[has_default]'&&/timestamp/i.test(formField(type.form,name+'[default]').value)){el.checked=false;}if(el.name==name+'[collation]'){el.className=(/(char|text|enum|set)$/.test(text)?'':'hidden');}if(el.name==name+'[unsigned]'){el.className=(/(int|float|double|decimal)$/.test(text)?'':'hidden');}if(el.name==name+'[on_delete]'){el.className=(/`/.test(text)?'':'hidden');}}}function
- editingLengthFocus(field){var
- td=field.parentNode;if(/(enum|set)$/.test(selectValue(td.previousSibling.firstChild))){var
- edit=document.getElementById('enum-edit');var
- val=field.value;edit.value=(/^'.+','.+'$/.test(val)?val.substr(1,val.length-2).replace(/','/g,"\n").replace(/''/g,"'"):val);td.appendChild(edit);field.style.display='none';edit.style.display='inline';edit.focus();}}function
- editingLengthBlur(edit){var
- field=edit.parentNode.firstChild;var
- val=edit.value;field.value=(/\n/.test(val)?"'"+val.replace(/\n+$/,'').replace(/'/g,"''").replace(/\n/g,"','")+"'":val);field.style.display='inline';edit.style.display='none';}function
- columnShow(checked,column){var
- trs=document.getElementById('edit-fields').getElementsByTagName('tr');for(var
- i=0;i<trs.length;i++){trs[i].getElementsByTagName('td')[column].className=(checked?'':'hidden');}}function
- partitionByChange(el){var
- partitionTable=/RANGE|LIST/.test(selectValue(el));el.form['partitions'].className=(partitionTable||!el.selectedIndex?'hidden':'');document.getElementById('partition-table').className=(partitionTable?'':'hidden');}function
- partitionNameChange(el){var
- row=parentTag(el,'tr').cloneNode(true);row.firstChild.firstChild.value='';parentTag(el,'table').appendChild(row);el.onchange=function(){};}function
- foreignAddRow(field){field.onchange=function(){};var
- row=parentTag(field,'tr').cloneNode(true);var
- selects=row.getElementsByTagName('select');for(var
- i=0;i<selects.length;i++){selects[i].name=selects[i].name.replace(/\]/,'1$&');selects[i].selectedIndex=0;}parentTag(field,'table').appendChild(row);}function
- indexesAddRow(field){field.onchange=function(){};var
- row=parentTag(field,'tr').cloneNode(true);var
- selects=row.getElementsByTagName('select');for(var
- i=0;i<selects.length;i++){selects[i].name=selects[i].name.replace(/indexes\[\d+/,'$&1');selects[i].selectedIndex=0;}var
- inputs=row.getElementsByTagName('input');for(var
- i=0;i<inputs.length;i++){inputs[i].name=inputs[i].name.replace(/indexes\[\d+/,'$&1');inputs[i].value='';}parentTag(field,'table').appendChild(row);}function
- indexesChangeColumn(field,prefix){var
- columns=parentTag(field,'td').getElementsByTagName('select');var
- names=[];for(var
- i=0;i<columns.length;i++){var
- value=selectValue(columns[i]);if(value){names.push(value);}}field.form[field.name.replace(/\].*/,'][name]')].value=prefix+names.join('_');}function
- indexesAddColumn(field,prefix){field.onchange=function(){indexesChangeColumn(field,prefix);};var
- select=field.form[field.name.replace(/\].*/,'][type]')];if(!select.selectedIndex){select.selectedIndex=3;select.onchange();}var
- column=field.parentNode.cloneNode(true);select=column.getElementsByTagName('select')[0];select.name=select.name.replace(/\]\[\d+/,'$&1');select.selectedIndex=0;var
- input=column.getElementsByTagName('input')[0];input.name=input.name.replace(/\]\[\d+/,'$&1');input.value='';parentTag(field,'td').appendChild(column);field.onchange();}var
- that,x,y;function
- schemaMousedown(el,event){if((event.which?event.which:event.button)==1){that=el;x=event.clientX-el.offsetLeft;y=event.clientY-el.offsetTop;}}function
- schemaMousemove(ev){if(that!==undefined){ev=ev||event;var
- left=(ev.clientX-x)/em;var
- top=(ev.clientY-y)/em;var
- divs=that.getElementsByTagName('div');var
- lineSet={};for(var
- i=0;i<divs.length;i++){if(divs[i].className=='references'){var
- div2=document.getElementById((/^refs/.test(divs[i].id)?'refd':'refs')+divs[i].id.substr(4));var
- ref=(tablePos[divs[i].title]?tablePos[divs[i].title]:[div2.parentNode.offsetTop/em,0]);var
- left1=-1;var
- id=divs[i].id.replace(/^ref.(.+)-.+/,'$1');if(divs[i].parentNode!=div2.parentNode){left1=Math.min(0,ref[1]-left)-1;divs[i].style.left=left1+'em';divs[i].getElementsByTagName('div')[0].style.width=-left1+'em';var
- left2=Math.min(0,left-ref[1])-1;div2.style.left=left2+'em';div2.getElementsByTagName('div')[0].style.width=-left2+'em';}if(!lineSet[id]){var
- line=document.getElementById(divs[i].id.replace(/^....(.+)-.+$/,'refl$1'));var
- top1=top+divs[i].offsetTop/em;var
- top2=top+div2.offsetTop/em;if(divs[i].parentNode!=div2.parentNode){top2+=ref[0]-top;line.getElementsByTagName('div')[0].style.height=Math.abs(top1-top2)+'em';}line.style.left=(left+left1)+'em';line.style.top=Math.min(top1,top2)+'em';lineSet[id]=true;}}}that.style.left=left+'em';that.style.top=top+'em';}}function
- schemaMouseup(ev,db){if(that!==undefined){ev=ev||event;tablePos[that.firstChild.firstChild.firstChild.data]=[(ev.clientY-y)/em,(ev.clientX-x)/em];that=undefined;var
- s='';for(var
- key
- in
- tablePos){s+='_'+key+':'+Math.round(tablePos[key][0]*10000)/10000+'x'+Math.round(tablePos[key][1]*10000)/10000;}s=encodeURIComponent(s.substr(1));var
- link=document.getElementById('schema-link');link.href=link.href.replace(/[^=]+$/,'')+s;cookie('adminer_schema-'+db+'='+s,30);}}<?php
- }else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo
- base64_decode("R0lGODdhEgASAKEAAO7u7gAAAJmZmQAAACwAAAAAEgASAAACIYSPqcvtD00I8cwqKb5v+q8pIAhxlRmhZYi17iPE8kzLBQA7");break;case"cross.gif":echo
- base64_decode("R0lGODdhEgASAKEAAO7u7gAAAJmZmQAAACwAAAAAEgASAAACI4SPqcvtDyMKYdZGb355wy6BX3dhlOEx57FK7gtHwkzXNl0AADs=");break;case"up.gif":echo
- base64_decode("R0lGODdhEgASAKEAAO7u7gAAAJmZmQAAACwAAAAAEgASAAACIISPqcvtD00IUU4K730T9J5hFTiKEXmaYcW2rgDH8hwXADs=");break;case"down.gif":echo
- base64_decode("R0lGODdhEgASAKEAAO7u7gAAAJmZmQAAACwAAAAAEgASAAACIISPqcvtD00I8cwqKb5bV/5cosdMJtmcHca2lQDH8hwXADs=");break;case"arrow.gif":echo
- base64_decode("R0lGODlhCAAKAIAAAICAgP///yH5BAEAAAEALAAAAAAIAAoAAAIPBIJplrGLnpQRqtOy3rsAADs=");break;}}exit;}function
- connection(){global$g;return$g;}function
- adminer(){global$b;return$b;}function
- idf_unescape($r){$Wc=substr($r,-1);return
- str_replace($Wc.$Wc,$Wc,substr($r,1,-1));}function
- escape_string($W){return
- substr(q($W),1,-1);}function
- remove_slashes($Ce,$fc=false){if(get_magic_quotes_gpc()){while(list($v,$W)=each($Ce)){foreach($W
- as$Qc=>$V){unset($Ce[$v][$Qc]);if(is_array($V)){$Ce[$v][stripslashes($Qc)]=$V;$Ce[]=&$Ce[$v][stripslashes($Qc)];}else$Ce[$v][stripslashes($Qc)]=($fc?$V:stripslashes($V));}}}}function
- bracket_escape($r,$Da=false){static$Qf=array(':'=>':1',']'=>':2','['=>':3');return
- strtr($r,($Da?array_flip($Qf):$Qf));}function
- h($L){return
- htmlspecialchars(str_replace("\0","",$L),ENT_QUOTES);}function
- nbsp($L){return(trim($L)!=""?h($L):" ");}function
- nl_br($L){return
- str_replace("\n","<br>",$L);}function
- checkbox($_,$X,$Oa,$Uc="",$Nd="",$Pc=false){static$q=0;$q++;$F="<input type='checkbox' name='$_' value='".h($X)."'".($Oa?" checked":"").($Nd?' onclick="'.h($Nd).'"':'').($Pc?" class='jsonly'":"")." id='checkbox-$q'>";return($Uc!=""?"<label for='checkbox-$q'>$F".h($Uc)."</label>":$F);}function
- optionlist($Rd,$cf=null,$jg=false){$F="";foreach($Rd
- as$Qc=>$V){$Sd=array($Qc=>$V);if(is_array($V)){$F.='<optgroup label="'.h($Qc).'">';$Sd=$V;}foreach($Sd
- as$v=>$W)$F.='<option'.($jg||is_string($v)?' value="'.h($v).'"':'').(($jg||is_string($v)?(string)$v:$W)===$cf?' selected':'').'>'.h($W);if(is_array($V))$F.='</optgroup>';}return$F;}function
- html_select($_,$Rd,$X="",$Md=true){if($Md)return"<select name='".h($_)."'".(is_string($Md)?' onchange="'.h($Md).'"':"").">".optionlist($Rd,$X)."</select>";$F="";foreach($Rd
- as$v=>$W)$F.="<label><input type='radio' name='".h($_)."' value='".h($v)."'".($v==$X?" checked":"").">".h($W)."</label>";return$F;}function
- confirm($fb=""){return" onclick=\"return confirm('".lang(0).($fb?" (' + $fb + ')":"")."');\"";}function
- print_fieldset($q,$bd,$pg=false,$Nd=""){echo"<fieldset><legend><a href='#fieldset-$q' onclick=\"".h($Nd)."return !toggle('fieldset-$q');\">$bd</a></legend><div id='fieldset-$q'".($pg?"":" class='hidden'").">\n";}function
- bold($Ia){return($Ia?" class='active'":"");}function
- odd($F=' class="odd"'){static$p=0;if(!$F)$p=-1;return($p++%
- 2?$F:'');}function
- js_escape($L){return
- addcslashes($L,"\r\n'\\/");}function
- json_row($v,$W=null){static$gc=true;if($gc)echo"{";if($v!=""){echo($gc?"":",")."\n\t\"".addcslashes($v,"\r\n\"\\").'": '.($W!==null?'"'.addcslashes($W,"\r\n\"\\").'"':'undefined');$gc=false;}else{echo"\n}\n";$gc=true;}}function
- ini_bool($Hc){$W=ini_get($Hc);return(eregi('^(on|true|yes)$',$W)||(int)$W);}function
- sid(){static$F;if($F===null)$F=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$F;}function
- q($L){global$g;return$g->quote($L);}function
- get_vals($D,$e=0){global$g;$F=array();$E=$g->query($D);if(is_object($E)){while($G=$E->fetch_row())$F[]=$G[$e];}return$F;}function
- get_key_vals($D,$h=null){global$g;if(!is_object($h))$h=$g;$F=array();$E=$h->query($D);if(is_object($E)){while($G=$E->fetch_row())$F[$G[0]]=$G[1];}return$F;}function
- get_rows($D,$h=null,$k="<p class='error'>"){global$g;$bb=(is_object($h)?$h:$g);$F=array();$E=$bb->query($D);if(is_object($E)){while($G=$E->fetch_assoc())$F[]=$G;}elseif(!$E&&!is_object($h)&&$k&&defined("PAGE_HEADER"))echo$k.error()."\n";return$F;}function
- unique_array($G,$t){foreach($t
- as$s){if(ereg("PRIMARY|UNIQUE",$s["type"])){$F=array();foreach($s["columns"]as$v){if(!isset($G[$v]))continue
- 2;$F[$v]=$G[$v];}return$F;}}$F=array();foreach($G
- as$v=>$W){if(!preg_match('~^(COUNT\\((\\*|(DISTINCT )?`(?:[^`]|``)+`)\\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\\(`(?:[^`]|``)+`\\))$~',$v))$F[$v]=$W;}return$F;}function
- where($Z){global$u;$F=array();foreach((array)$Z["where"]as$v=>$W)$F[]=idf_escape(bracket_escape($v,1)).(($u=="sql"&&ereg('\\.',$W))||$u=="mssql"?" LIKE ".exact_value(addcslashes($W,"%_\\")):" = ".exact_value($W));foreach((array)$Z["null"]as$v)$F[]=idf_escape($v)." IS NULL";return
- implode(" AND ",$F);}function
- where_check($W){parse_str($W,$Na);remove_slashes(array(&$Na));return
- where($Na);}function
- where_link($p,$e,$X,$Od="="){return"&where%5B$p%5D%5Bcol%5D=".urlencode($e)."&where%5B$p%5D%5Bop%5D=".urlencode(($X!==null?$Od:"IS NULL"))."&where%5B$p%5D%5Bval%5D=".urlencode($X);}function
- cookie($_,$X){global$ba;$he=array($_,(ereg("\n",$X)?"":$X),time()+2592000,preg_replace('~\\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$he[]=true;return
- call_user_func_array('setcookie',$he);}function
- restart_session(){if(!ini_bool("session.use_cookies"))session_start();}function&get_session($v){return$_SESSION[$v][DRIVER][SERVER][$_GET["username"]];}function
- set_session($v,$W){$_SESSION[$v][DRIVER][SERVER][$_GET["username"]]=$W;}function
- auth_url($wb,$J,$U,$j=null){global$xb;preg_match('~([^?]*)\\??(.*)~',remove_from_uri(implode("|",array_keys($xb))."|username|".($j!==null?"db|":"").session_name()),$z);return"$z[1]?".(sid()?SID."&":"").($wb!="server"||$J!=""?urlencode($wb)."=".urlencode($J)."&":"")."username=".urlencode($U).($j!=""?"&db=".urlencode($j):"").($z[2]?"&$z[2]":"");}function
- is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function
- redirect($fd,$qd=null){if($qd!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($fd!==null?$fd:$_SERVER["REQUEST_URI"]))][]=$qd;}if($fd!==null){if($fd=="")$fd=".";header("Location: $fd");exit;}}function
- query_redirect($D,$fd,$qd,$He=true,$Ub=true,$bc=false){global$g,$k,$b;if($Ub)$bc=!$g->query($D);$lf="";if($D)$lf=$b->messageQuery("$D;");if($bc){$k=error().$lf;return
- false;}if($He)redirect($fd,$qd.$lf);return
- true;}function
- queries($D=null){global$g;static$Fe=array();if($D===null)return
- implode(";\n",$Fe);$Fe[]=(ereg(';$',$D)?"DELIMITER ;;\n$D;\nDELIMITER ":$D);return$g->query($D);}function
- apply_queries($D,$P,$Pb='table'){foreach($P
- as$N){if(!queries("$D ".$Pb($N)))return
- false;}return
- true;}function
- queries_redirect($fd,$qd,$He){return
- query_redirect(queries(),$fd,$qd,$He,false,!$He);}function
- remove_from_uri($ge=""){return
- substr(preg_replace("~(?<=[?&])($ge".(SID?"":"|".session_name()).")=[^&]*&~",'',"$_SERVER[REQUEST_URI]&"),0,-1);}function
- pagination($fe,$kb){return" ".($fe==$kb?$fe+1:'<a href="'.h(remove_from_uri("page").($fe?"&page=$fe":"")).'">'.($fe+1)."</a>");}function
- get_file($v,$pb=false){$dc=$_FILES[$v];if(!$dc||$dc["error"])return$dc["error"];$F=file_get_contents($pb&&ereg('\\.gz$',$dc["name"])?"compress.zlib://$dc[tmp_name]":($pb&&ereg('\\.bz2$',$dc["name"])?"compress.bzip2://$dc[tmp_name]":$dc["tmp_name"]));if($pb){$mf=substr($F,0,3);if(function_exists("iconv")&&ereg("^\xFE\xFF|^\xFF\xFE",$mf,$Ne))$F=iconv("utf-16","utf-8",$F);elseif($mf=="\xEF\xBB\xBF")$F=substr($F,3);}return$F;}function
- upload_error($k){$od=($k==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($k?lang(1).($od?" ".lang(2,$od):""):lang(3));}function
- repeat_pattern($oe,$w){return
- str_repeat("$oe{0,65535}",$w/65535)."$oe{0,".($w
- %
- 65535)."}";}function
- is_utf8($W){return(preg_match('~~u',$W)&&!preg_match('~[\\0-\\x8\\xB\\xC\\xE-\\x1F]~',$W));}function
- shorten_utf8($L,$w=80,$sf=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{FFFF}]",$w).")($)?)u",$L,$z))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$w).")($)?)",$L,$z);return
- h($z[1]).$sf.(isset($z[2])?"":"<i>...</i>");}function
- friendly_url($W){return
- preg_replace('~[^a-z0-9_]~i','-',$W);}function
- hidden_fields($Ce,$Cc=array()){while(list($v,$W)=each($Ce)){if(is_array($W)){foreach($W
- as$Qc=>$V)$Ce[$v."[$Qc]"]=$V;}elseif(!in_array($v,$Cc))echo'<input type="hidden" name="'.h($v).'" value="'.h($W).'">';}}function
- hidden_fields_get(){echo(sid()?'<input type="hidden" name="'.session_name().'" value="'.h(session_id()).'">':''),(SERVER!==null?'<input type="hidden" name="'.DRIVER.'" value="'.h(SERVER).'">':""),'<input type="hidden" name="username" value="'.h($_GET["username"]).'">';}function
- column_foreign_keys($N){global$b;$F=array();foreach($b->foreignKeys($N)as$n){foreach($n["source"]as$W)$F[$W][]=$n;}return$F;}function
- enum_input($S,$_a,$l,$X,$Hb=null){global$b;preg_match_all("~'((?:[^']|'')*)'~",$l["length"],$jd);$F=($Hb!==null?"<label><input type='$S'$_a value='$Hb'".((is_array($X)?in_array($Hb,$X):$X===0)?" checked":"")."><i>".lang(4)."</i></label>":"");foreach($jd[1]as$p=>$W){$W=stripcslashes(str_replace("''","'",$W));$Oa=(is_int($X)?$X==$p+1:(is_array($X)?in_array($p+1,$X):$X===$W));$F.=" <label><input type='$S'$_a value='".($p+1)."'".($Oa?' checked':'').'>'.h($b->editVal($W,$l)).'</label>';}return$F;}function
- input($l,$X,$o){global$T,$b,$u;$_=h(bracket_escape($l["field"]));echo"<td class='function'>";$Pe=($u=="mssql"&&$l["auto_increment"]);if($Pe&&!$_POST["save"])$o=null;$rc=(isset($_GET["select"])||$Pe?array("orig"=>lang(5)):array())+$b->editFunctions($l);$_a=" name='fields[$_]'";if($l["type"]=="enum")echo
- nbsp($rc[""])."<td>".$b->editInput($_GET["edit"],$l,$_a,$X);else{$gc=0;foreach($rc
- as$v=>$W){if($v===""||!$W)break;$gc++;}$Md=($gc?" onchange=\"var f = this.form['function[".h(js_escape(bracket_escape($l["field"])))."]']; if ($gc > f.selectedIndex) f.selectedIndex = $gc;\"":"");$_a.=$Md;echo(count($rc)>1?html_select("function[$_]",$rc,$o===null||in_array($o,$rc)||isset($rc[$o])?$o:"","functionChange(this);"):nbsp(reset($rc))).'<td>';$Jc=$b->editInput($_GET["edit"],$l,$_a,$X);if($Jc!="")echo$Jc;elseif($l["type"]=="set"){preg_match_all("~'((?:[^']|'')*)'~",$l["length"],$jd);foreach($jd[1]as$p=>$W){$W=stripcslashes(str_replace("''","'",$W));$Oa=(is_int($X)?($X>>$p)&1:in_array($W,explode(",",$X),true));echo" <label><input type='checkbox' name='fields[$_][$p]' value='".(1<<$p)."'".($Oa?' checked':'')."$Md>".h($b->editVal($W,$l)).'</label>';}}elseif(ereg('blob|bytea|raw|file',$l["type"])&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$_'$Md>";elseif(ereg('text|lob',$l["type"]))echo"<textarea ".($u!="sqlite"||ereg("\n",$X)?"cols='50' rows='12'":"cols='30' rows='1' style='height: 1.2em;'")."$_a>".h($X).'</textarea>';else{$pd=(!ereg('int',$l["type"])&&preg_match('~^(\\d+)(,(\\d+))?$~',$l["length"],$z)?((ereg("binary",$l["type"])?2:1)*$z[1]+($z[3]?1:0)+($z[2]&&!$l["unsigned"]?1:0)):($T[$l["type"]]?$T[$l["type"]]+($l["unsigned"]?0:1):0));echo"<input value='".h($X)."'".($pd?" maxlength='$pd'":"").(ereg('char|binary',$l["type"])&&$pd>20?" size='40'":"")."$_a>";}}}function
- process_input($l){global$b;$r=bracket_escape($l["field"]);$o=$_POST["function"][$r];$X=$_POST["fields"][$r];if($l["type"]=="enum"){if($X==-1)return
- false;if($X=="")return"NULL";return+$X;}if($l["auto_increment"]&&$X=="")return
- null;if($o=="orig")return($l["on_update"]=="CURRENT_TIMESTAMP"?idf_escape($l["field"]):false);if($o=="NULL")return"NULL";if($l["type"]=="set")return
- array_sum((array)$X);if(ereg('blob|bytea|raw|file',$l["type"])&&ini_bool("file_uploads")){$dc=get_file("fields-$r");if(!is_string($dc))return
- false;return
- q($dc);}return$b->processInput($l,$X,$o);}function
- search_tables(){global$b,$g;$_GET["where"][0]["op"]="LIKE %%";$_GET["where"][0]["val"]=$_POST["query"];$mc=false;foreach(table_status()as$N=>$O){$_=$b->tableName($O);if(isset($O["Engine"])&&$_!=""&&(!$_POST["tables"]||in_array($N,$_POST["tables"]))){$E=$g->query("SELECT".limit("1 FROM ".table($N)," WHERE ".implode(" AND ",$b->selectSearchProcess(fields($N),array())),1));if($E->fetch_row()){if(!$mc){echo"<ul>\n";$mc=true;}echo"<li><a href='".h(ME."select=".urlencode($N)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$_</a>\n";}}}echo($mc?"</ul>":"<p class='message'>".lang(6))."\n";}function
- dump_headers($Bc,$yd=false){global$b;$F=$b->dumpHeaders($Bc,$yd);$de=$_POST["output"];if($de!="text")header("Content-Disposition: attachment; filename=".$b->dumpFilename($Bc).".$F".($de!="file"&&!ereg('[^0-9a-z]',$de)?".$de":""));session_write_close();return$F;}function
- dump_csv($G){foreach($G
- as$v=>$W){if(preg_match("~[\"\n,;\t]~",$W)||$W==="")$G[$v]='"'.str_replace('"','""',$W).'"';}echo
- implode(($_POST["format"]=="csv"?",":($_POST["format"]=="tsv"?"\t":";")),$G)."\r\n";}function
- apply_sql_function($o,$e){return($o?($o=="unixepoch"?"DATETIME($e, '$o')":($o=="count distinct"?"COUNT(DISTINCT ":strtoupper("$o("))."$e)"):$e);}function
- password_file(){$tb=ini_get("upload_tmp_dir");if(!$tb){if(function_exists('sys_get_temp_dir'))$tb=sys_get_temp_dir();else{$ec=@tempnam("","");if(!$ec)return
- false;$tb=dirname($ec);unlink($ec);}}$ec="$tb/adminer.key";$F=@file_get_contents($ec);if($F)return$F;$oc=@fopen($ec,"w");if($oc){$F=md5(uniqid(mt_rand(),true));fwrite($oc,$F);fclose($oc);}return$F;}function
- is_mail($Eb){$za='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$vb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$oe="$za+(\\.$za+)*@($vb?\\.)+$vb";return
- preg_match("(^$oe(,\\s*$oe)*\$)i",$Eb);}function
- is_url($L){$vb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return(preg_match("~^(https?)://($vb?\\.)+$vb(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$L,$z)?strtolower($z[1]):"");}global$b,$g,$xb,$Cb,$Lb,$k,$rc,$wc,$ba,$Ic,$u,$ca,$Vc,$Ld,$qf,$Q,$R,$T,$fg,$ia;if(!$_SERVER["REQUEST_URI"])$_SERVER["REQUEST_URI"]=$_SERVER["ORIG_PATH_INFO"];if(!strpos($_SERVER["REQUEST_URI"],'?')&&$_SERVER["QUERY_STRING"]!="")$_SERVER["REQUEST_URI"].="?$_SERVER[QUERY_STRING]";$ba=$_SERVER["HTTPS"]&&strcasecmp($_SERVER["HTTPS"],"off");@ini_set("session.use_trans_sid",false);if(!defined("SID")){session_name("adminer_sid");$he=array(0,preg_replace('~\\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$he[]=true;call_user_func_array('session_set_cookie_params',$he);session_start();}remove_slashes(array(&$_GET,&$_POST,&$_COOKIE),$fc);if(function_exists("set_magic_quotes_runtime"))set_magic_quotes_runtime(false);@set_time_limit(0);@ini_set("zend.ze1_compatibility_mode",false);@ini_set("precision",20);$Vc=array('en'=>'English','cs'=>'?eština','sk'=>'Sloven?ina','nl'=>'Nederlands','es'=>'Español','de'=>'Deutsch','fr'=>'Français','it'=>'Italiano','et'=>'Eesti','hu'=>'Magyar','pl'=>'Polski','ca'=>'Català','pt'=>'Português','sl'=>'Slovenski','lt'=>'Lietuvi?','tr'=>'Türkçe','ro'=>'Limba Român?','id'=>'Bahasa Indonesia','ru'=>'??????? ????','uk'=>'??????????','zh'=>'????','zh-tw'=>'????','ja'=>'???','ta'=>'??????','bn'=>'?????','ar'=>'???????','fa'=>'?????',);function
- get_lang(){global$ca;return$ca;}function
- lang($r,$Ed=null){global$ca,$R;$Rf=(isset($R[$r])?$R[$r]:$r);if(is_array($Rf)){$re=($Ed==1?0:($ca=='cs'||$ca=='sk'?($Ed&&$Ed<5?1:2):($ca=='fr'?(!$Ed?0:1):($ca=='pl'?($Ed
- %
- 10>1&&$Ed
- %
- 10<5&&$Ed/10
- %
- 10!=1?1:2):($ca=='sl'?($Ed
- %
- 100==1?0:($Ed
- %
- 100==2?1:($Ed
- %
- 100==3||$Ed
- %
- 100==4?2:3))):($ca=='lt'?($Ed
- %
- 10==1&&$Ed
- %
- 100!=11?0:($Ed
- %
- 10>1&&$Ed/10
- %
- 10!=1?1:2)):($ca=='ru'||$ca=='uk'?($Ed
- %
- 10==1&&$Ed
- %
- 100!=11?0:($Ed
- %
- 10>1&&$Ed
- %
- 10<5&&$Ed/10
- %
- 10!=1?1:2)):1)))))));$Rf=$Rf[$re];}$ya=func_get_args();array_shift($ya);$lc=str_replace("%d","%s",$Rf);if($lc!=$Rf)$ya[0]=number_format($Ed,0,".",lang(7));return
- vsprintf($lc,$ya);}function
- switch_lang(){global$ca,$Vc;echo"<form action=''>\n<div id='lang'>";hidden_fields($_GET,array('lang'));echo
- lang(8).": ".html_select("lang",$Vc,$ca,"var loc = location.search.replace(/[?&]lang=[^&]*/, ''); location.search = loc + (loc ? '&' : '') + 'lang=' + this.value;")," <input type='submit' value='".lang(9)."' class='hidden'>\n","</div>\n</form>\n";}if(isset($_GET["lang"])){$_COOKIE["adminer_lang"]=$_GET["lang"];$_SESSION["lang"]=$_GET["lang"];}$ca="en";if(isset($Vc[$_COOKIE["adminer_lang"]])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$ca=$_COOKIE["adminer_lang"];}elseif(isset($Vc[$_SESSION["lang"]]))$ca=$_SESSION["lang"];else{$pa=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$jd,PREG_SET_ORDER);foreach($jd
- as$z)$pa[$z[1]]=(isset($z[3])?$z[3]:1);arsort($pa);foreach($pa
- as$v=>$C){if(isset($Vc[$v])){$ca=$v;break;}$v=preg_replace('~-.*~','',$v);if(!isset($pa[$v])&&isset($Vc[$v])){$ca=$v;break;}}}switch($ca){case"en":$R=array('Are you sure?','Unable to upload a file.','Maximum allowed file size is %sB.','File does not exist.','empty','original','No tables.',',','Language','Use','Please use one of the extensions %s.','File exists.','User types','Numbers','Date and time','Strings','Binary','Network','Geometry','Lists','System','Server','Username','Password','Database','Login','Permanent login','Select data','Show structure','Alter view','Alter table','New item','Last page','Edit',array('%d byte','%d bytes'),'Select','Functions','Aggregation','Search','anywhere','Sort','descending','Limit','Text length','Action','Full table scan','SQL command','open','save','Alter database','Alter schema','Create schema','Database schema','Privileges','Dump','Logout','database','schema','Create new table','select','ltr','Invalid CSRF token. Send the form again.','Logout successful.','Session support must be enabled.','Session expired, please login again.','Invalid credentials.','No extension','None of the supported PHP extensions (%s) are available.','Too big POST data. Reduce the data or increase the %s configuration directive.','Invalid database.','Databases have been dropped.','Select database','Create new database','Process list','Variables','Status','%s version: %s through PHP extension %s','Logged as: %s','Collation','Tables','Drop','Refresh','Schema','Invalid schema.','No rows.','%.3f s','Foreign keys','collation','ON DELETE','Column name','Parameter name','Type','Length','Options','Auto Increment','Default values','Comment','Add next','Move up','Move down','Remove','View','Table','Column','Indexes','Alter indexes','Source','Target','ON UPDATE','Alter','Add foreign key','Triggers','Add trigger','Permanent link','Export','Output','Format','Routines','Events','Data','Create user','Error in query',array('%d row','%d rows'),array('Query executed OK, %d row affected.','Query executed OK, %d rows affected.'),'No commands to execute.',array('%d query executed OK.','%d queries executed OK.'),'File upload','File uploads are disabled.','Execute','Stop on error','Show only errors','From server','Webserver file %s','Run file','History','Clear','Edit all','Item has been deleted.','Item has been updated.','Item%s has been inserted.','Insert','Save','Save and continue edit','Save and insert next','Delete','Table has been dropped.','Table has been altered.','Table has been created.','Create table','Maximum number of allowed fields exceeded. Please increase %s and %s.','Table name','engine','Partition by','Partitions','Partition name','Values','Indexes have been altered.','Index Type','Column (length)','Name','Database has been dropped.','Database has been renamed.','Database has been created.','Database has been altered.','Create database','Schema has been dropped.','Schema has been created.','Schema has been altered.','Call',array('Routine has been called, %d row affected.','Routine has been called, %d rows affected.'),'Foreign key has been dropped.','Foreign key has been altered.','Foreign key has been created.','Source and target columns must have the same data type, there must be an index on the target columns and referenced data must exist.','Foreign key','Target table','Change','Add column','View has been dropped.','View has been altered.','View has been created.','Create view','Event has been dropped.','Event has been altered.','Event has been created.','Alter event','Create event','Start','End','Every','On completion preserve','Routine has been dropped.','Routine has been altered.','Routine has been created.','Alter function','Alter procedure','Create function','Create procedure','Return type','Sequence has been dropped.','Sequence has been created.','Sequence has been altered.','Alter sequence','Create sequence','Type has been dropped.','Type has been created.','Alter type','Create type','Trigger has been dropped.','Trigger has been altered.','Trigger has been created.','Alter trigger','Create trigger','Time','Event','User has been dropped.','User has been altered.','User has been created.','Hashed','Routine','Grant','Revoke',array('%d process has been killed.','%d processes have been killed.'),'%d in total','Kill',array('%d item has been affected.','%d items have been affected.'),'Double click on a value to modify it.',array('%d row has been imported.','%d rows have been imported.'),'Unable to select the table','edit','Relations','Use edit link to modify this value.','Page','last','whole result','Clone','Import','Tables have been truncated.','Tables have been moved.','Tables have been copied.','Tables have been dropped.','Tables have been optimized.','Tables and views','Search data in tables','Engine','Data Length','Index Length','Data Free','Rows','Analyze','Optimize','Check','Repair','Truncate','Move to other database','Move','Copy','Sequences','Schedule','At given time',array('%d e-mail has been sent.','%d e-mails have been sent.'));break;case"cs":$R=array('Opravdu?','Nepoda?ilo se nahrát soubor.','Maximální povolená velikost souboru je %sB.','Soubor neexistuje.','prázdné','p?vodní','Žádné tabulky.',' ','Jazyk','Vybrat','Prosím použijte jednu z koncovek %s.','Soubor existuje.','Uživatelské typy','?ísla','Datum a ?as','?et?zce','Binární','Sí?','Geometrie','Seznamy','Systém','Server','Uživatel','Heslo','Databáze','P?ihlásit se','Trvalé p?ihlášení','Vypsat data','Zobrazit strukturu','Pozm?nit pohled','Pozm?nit tabulku','Nová položka','Poslední stránka','Upravit',array('%d bajt','%d bajty','%d bajt?'),'Vypsat','Funkce','Agregace','Vyhledat','kdekoliv','Se?adit','sestupn?','Limit','Délka text?','Akce','Pr?chod celé tabulky','SQL p?íkaz','otev?ít','uložit','Pozm?nit databázi','Pozm?nit schéma','Vytvo?it schéma','Schéma databáze','Oprávn?ní','Export','Odhlásit','databáze','schéma','Vytvo?it novou tabulku','vypsat','ltr','Neplatný token CSRF. Odešlete formulá? znovu.','Odhlášení prob?hlo v po?ádku.','Session prom?nné musí být povolené.','Session vypršela, p?ihlašte se prosím znovu.','Neplatné p?ihlašovací údaje.','Žádné rozší?ení','Není dostupné žádné z podporovaných PHP rozší?ení (%s).','P?íliš velká POST data. Zmenšete data nebo zvyšte hodnotu konfigura?ní direktivy %s.','Nesprávná databáze.','Databáze byly odstran?ny.','Vybrat databázi','Vytvo?it novou databázi','Seznam proces?','Prom?nné','Stav','Verze %s: %s p?es PHP rozší?ení %s','P?ihlášen jako: %s','Porovnávání','Tabulky','Odstranit','Obnovit','Schéma','Nesprávné schéma.','Žádné ?ádky.','%.3f s','Cizí klí?e','porovnávání','P?i smazání','Název sloupce','Název parametru','Typ','Délka','Volby','Auto Increment','Výchozí hodnoty','Komentá?','P?idat další','P?esunout nahoru','P?esunout dol?','Odebrat','Pohled','Tabulka','Sloupec','Indexy','Pozm?nit indexy','Zdroj','Cíl','P?i zm?n?','Zm?nit','P?idat cizí klí?','Triggery','P?idat trigger','Trvalý odkaz','Export','Výstup','Formát','Procedury a funkce','Události','Data','Vytvo?it uživatele','Chyba v dotazu',array('%d ?ádek','%d ?ádky','%d ?ádk?'),array('P?íkaz prob?hl v po?ádku, byl zm?n?n %d záznam.','P?íkaz prob?hl v po?ádku, byly zm?n?ny %d záznamy.','P?íkaz prob?hl v po?ádku, bylo zm?n?no %d záznam?.'),'Žádné p?íkazy k vykonání.',array('%d p?íkaz prob?hl v po?ádku.','%d p?íkazy prob?hly v po?ádku.','%d p?íkaz? prob?hlo v po?ádku.'),'Nahrání souboru','Nahrávání soubor? není povoleno.','Provést','Zastavit p?i chyb?','Zobrazit pouze chyby','Ze serveru','Soubor %s na webovém serveru','Spustit soubor','Historie','Vy?istit','Upravit vše','Položka byla smazána.','Položka byla aktualizována.','Položka%s byla vložena.','Vložit','Uložit','Uložit a pokra?ovat v editaci','Uložit a vložit další','Smazat','Tabulka byla odstran?na.','Tabulka byla zm?n?na.','Tabulka byla vytvo?ena.','Vytvo?it tabulku','Byl p?ekro?en maximální povolený po?et polí. Zvyšte prosím %s a %s.','Název tabulky','úložišt?','Rozd?lit podle','Oddíly','Název oddílu','Hodnoty','Indexy byly zm?n?ny.','Typ indexu','Sloupec (délka)','Název','Databáze byla odstran?na.','Databáze byla p?ejmenována.','Databáze byla vytvo?ena.','Databáze byla zm?n?na.','Vytvo?it databázi','Schéma bylo odstran?no.','Schéma bylo vytvo?eno.','Schéma bylo zm?n?no.','Zavolat',array('Procedura byla zavolána, byl zm?n?n %d záznam.','Procedura byla zavolána, byly zm?n?ny %d záznamy.','Procedura byla zavolána, bylo zm?n?no %d záznam?.'),'Cizí klí? byl odstran?n.','Cizí klí? byl zm?n?n.','Cizí klí? byl vytvo?en.','Zdrojové a cílové sloupce musí mít stejný datový typ, nad cílovými sloupci musí být definován index a odkazovaná data musí existovat.','Cizí klí?','Cílová tabulka','Zm?nit','P?idat sloupec','Pohled byl odstran?n.','Pohled byl zm?n?n.','Pohled byl vytvo?en.','Vytvo?it pohled','Událost byla odstran?na.','Událost byla zm?n?na.','Událost byla vytvo?ena.','Pozm?nit událost','Vytvo?it událost','Za?átek','Konec','Každých','Po dokon?ení zachovat','Procedura byla odstran?na.','Procedura byla zm?n?na.','Procedura byla vytvo?ena.','Zm?nit funkci','Zm?nit proceduru','Vytvo?it funkci','Vytvo?it proceduru','Návratový typ','Sekvence byla odstran?na.','Sekvence byla vytvo?ena.','Sekvence byla zm?n?na.','Pozm?nit sekvenci','Vytvo?it sekvenci','Typ byl odstran?n.','Typ byl vytvo?en.','Pozm?nit typ','Vytvo?it typ','Trigger byl odstran?n.','Trigger byl zm?n?n.','Trigger byl vytvo?en.','Zm?nit trigger','Vytvo?it trigger','?as','Událost','Uživatel byl odstran?n.','Uživatel byl zm?n?n.','Uživatel byl vytvo?en.','Zahašované','Procedura','Povolit','Zakázat',array('Byl ukon?en %d proces.','Byly ukon?eny %d procesy.','Bylo ukon?eno %d proces?.'),'%d celkem','Ukon?it',array('Byl ovlivn?n %d záznam.','Byly ovlivn?ny %d záznamy.','Bylo ovlivn?no %d záznam?.'),'Dvojklikn?te na polí?ko, které chcete zm?nit.',array('Byl importován %d záznam.','Byly importovány %d záznamy.','Bylo importováno %d záznam?.'),'Nepoda?ilo se vypsat tabulku','upravit','Vztahy','Ke zm?n? této hodnoty použijte odkaz upravit.','Stránka','poslední','celý výsledek','Klonovat','Import','Tabulky byly vyprázdn?ny.','Tabulky byly p?esunuty.','Tabulky byly zkopírovány.','Tabulky byly odstran?ny.','Tabulky byly optimalizovány.','Tabulky a pohledy','Vyhledat data v tabulkách','Úložišt?','Velikost dat','Velikost index?','Volné místo','?ádk?','Analyzovat','Optimalizovat','Zkontrolovat','Opravit','Vyprázdnit','P?esunout do jiné databáze','P?esunout','Zkopírovat','Sekvence','Plán','V daný ?as','ne');break;case"sk":$R=array('Naozaj?','Súbor sa nepodarilo nahra?.','Maximálna povolená ve?kos? súboru je %sB.','Súbor neexistuje.','prázdne','originál','Žiadne tabu?ky.',' ','Jazyk','Vybra?','Prosím vyberte jednu z koncoviek %s.','Súbor existuje.','Užívate?ské typy','?ísla','Dátum a ?as','Re?azce','Binárne','Sie?','Geometria','Zoznamy','Systém','Server','Používate?','Heslo','Databáza','Prihlási? sa','Trvalé prihlásenie','Vypísa? dáta','Zobrazi? štruktúru','Zmeni? poh?ad','Zmeni? tabu?ku','Nová položka','Posledná stránka','Upravi?',array('%d bajt','%d bajty','%d bajtov'),'Vypísa?','Funkcie','Agregácia','Vyh?ada?','kdeko?vek','Zotriedi?','zostupne','Limit','D?žka textov','Akcia','Full table scan','SQL príkaz','otvori?','uloži?','Zmeni? databázu','Pozmeni? schému','Vytvori? schému','Schéma databázy','Oprávnenia','Export','Odhlási?','databáza','schéma','Vytvori? novú tabu?ku','vypísa?','ltr','Neplatný token CSRF. Odošlite formulár znova.','Odhlásenie prebehlo v poriadku.','Session premenné musia by? povolené.','Session vypršala, prihláste sa prosím znova.','Neplatné prihlasovacie údaje.','Žiadne rozšírenie','Nie je dostupné žiadne z podporovaných rozšírení (%s).','Príliš ve?ké POST dáta. Zmenšite dáta alebo zvýšte hodnotu konfigura?ej direktívy %s.','Nesprávna databáza.','Databázy boli odstránené.','Vybra? databázu','Vytvori? novú databázu','Zoznam procesov','Premenné','Stav','Verzia %s: %s cez PHP rozšírenie %s','Prihlásený ako: %s','Porovnávanie','Tabu?ky','Odstráni?','Obnovi?','Schéma','Neplatné schéma.','Žiadne riadky.','%.3f s','Cudzie k?ú?e','porovnávanie','ON DELETE','Názov st?pca','Názov parametra','Typ','D?žka','Vo?by','Auto Increment','Východzie hodnoty','Komentár','Prida? ?alší','Presunú? hore','Presunú? dolu','Odobra?','Poh?ad','Tabu?ka','St?pec','Indexy','Zmeni? indexy','Zdroj','Cie?','ON UPDATE','Zmeni?','Prida? cudzí k?ú?','Triggery','Prida? trigger','Permanentný odkaz','Export','Výstup','Formát','Procedúry','Udalosti','Dáta','Vytvori? používate?a','Chyba v dotaze',array('%d riadok','%d riadky','%d riadkov'),array('Príkaz prebehol v poriadku, bol zmenený %d záznam.','Príkaz prebehol v poriadku boli zmenené %d záznamy.','Príkaz prebehol v poriadku bolo zmenených %d záznamov.'),'Žiadne príkazy na vykonanie.',array('Bol vykonaný %d dotaz.','Boli vykonané %d dotazy.','Bolo vykonaných %d dotazov.'),'Nahranie súboru','Nahrávánie súborov nie je povolené.','Vykona?','Zastavi? pri chybe','Zobrazi? iba chyby','Zo serveru','Súbor %s na webovom serveri','Spusti? súbor','História','Vy?isti?','Upravi? všetko','Položka bola vymazaná.','Položka bola aktualizovaná.','Položka%s bola vložená.','Vloži?','Uloži?','Uloži? a pokra?ova? v úpravách','Uloži? a vloži? ?alší','Zmaza?','Tabu?ka bola odstránená.','Tabu?ka bola zmenená.','Tabu?ka bola vytvorená.','Vytvori? tabu?ku','Bol prekro?ený maximálny po?et povolených polí. Zvýšte prosím %s a %s.','Názov tabu?ky','úložisko','Rozdeli? pod?a','Oddiely','Názov oddielu','Hodnoty','Indexy boli zmenené.','Typ indexu','St?pec (d?žka)','Názov','Databáza bola odstránená.','Databáza bola premenovaná.','Databáza bola vytvorená.','Databáza bola zmenená.','Vytvori? databázu','Schéma bola odstránená.','Schéma bola vytvorená.','Schéma bola zmenená.','Zavola?',array('Procedúra bola zavolaná, bol zmenený %d záznam.','Procedúra bola zavolaná, boli zmenené %d záznamy.','Procedúra bola zavolaná, bolo zmenených %d záznamov.'),'Cudzí k?ú? bol odstránený.','Cudzí k?ú? bol zmenený.','Cudzí k?ú? bol vytvorený.','Zdrojové a cie?ové st?pce musia ma? rovnaký datový typ, nad cie?ovými st?pcami musí by? definovaný index a odkazované dáta musia existova?.','Cudzí k?ú?','Cie?ová tabu?ka','Zmeni?','Prida? st?pec','Poh?ad bol odstránený.','Poh?ad bol zmenený.','Poh?ad bol vytvorený.','Vytvori? poh?ad','Udalos? bola odstránená.','Udalos? bola zmenená.','Udalos? bola vytvorená.','Upravi? udalos?','Vytvori? udalos?','Za?iatok','Koniec','Každých','Po dokon?ení zachovat','Procedúra bola odstránená.','Procedúra bola zmenená.','Procedúra bola vytvorená.','Zmeni? funkciu','Zmeni? procedúru','Vytvori? funkciu','Vytvori? procedúru','Návratový typ','Sekvencia bola odstránená.','Sekvencia bola vytvorená.','Sekvencia bola zmenená.','Pozmeni? sekvenciu','Vytvori? sekvenciu','Typ bol odstránený.','Typ bol vytvorený.','Pozmeni? typ','Vytvori? typ','Trigger bol odstránený.','Trigger bol zmenený.','Trigger bol vytvorený.','Zmeni? trigger','Vytvori? trigger','?as','Udalos?','Používate? bol odstránený.','Používate? bol zmenený.','Používate? bol vytvorený.','Zahašované','Procedúra','Povoli?','Zakáza?',array('Bol ukon?ený %d proces.','Boli ukon?ené %d procesy.','Bolo ukon?ených %d procesov.'),'%d celkom','Ukon?i?','%d položiek bolo ovplyvnených.','Dvojkliknite na polí?ko, ktoré chcete zmeni?.',array('Bol importovaný %d záznam.','Boli importované %d záznamy.','Bolo importovaných %d záznamov.'),'Tabu?ku sa nepodarilo vypísa?','upravi?','Vz?ahy','Pre zmenu tejto hodnoty použite odkaz upravi?.','Stránka','posledný','celý výsledok','Klonova?','Import','Tabu?ka bola vyprázdnená.','Tabu?ka bola presunutá.','Tabu?ky boli skopírované.','Tabu?ka bola odstránená.','Tables have been optimized.','Tabu?ky a poh?ady','Vyh?ada? dáta v tabu?kách','Typ','Ve?kos? dát','Ve?kos? indexu','Vo?né miesto','Riadky','Analyzova?','Optimalizova?','Skontrolova?','Opravi?','Vyprázdni?','Presunú? do inej databázy','Presunú?','Kopírova?','Sekvencia','Plán','V stanovený ?as','HH:MM:SS');break;case"nl":$R=array('Weet u het zeker?','Onmogelijk bestand te uploaden.','Maximum toegelaten bestandsgrootte is %sB.','Bestand niet gevonden.','leeg','origineel','Geen tabellen.','.','Taal','Gebruik','Gebruik 1 van volgende extensies: %s.','Bestand bestaat reeds.','Gebruikersgedefiniëerde types','Getallen','Datum en tijd','Tekst','Binaire gegevens','Netwerk','Geometrie','Lijsten','Databasesysteem','Server','Gebruikersnaam','Wachtwoord','Database','Inloggen','Blijf aangemeld','Gegevens selecteren','Toon structuur','View aanpassen','Tabel aanpassen','Nieuw item','Laatste pagina','Bewerk',array('%d byte','%d bytes'),'Kies','Functies','Totalen','Zoeken','overal','Sorteren','Aflopend','Beperk','Tekst lengte','Acties','Full table scan','SQL opdracht','openen','opslaan','Database aanpassen','Schema wijzigen','Schema maken','Database schema','Rechten','Exporteer','Uitloggen','database','schema','Nieuwe tabel','kies','ltr','Ongeldig CSRF token. Verstuur het formulier opnieuw.','Uitloggen geslaagd.','Sessies moeten geactiveerd zijn.','Uw sessie is verlopen. Gelieve opnieuw in te loggen.','Ongeldige logingegevens.','Geen extensie','Geen geldige PHP extensies beschikbaar (%s).','POST-data is te groot. Verklein de hoeveelheid data of verhoog de %s configuratie.','Ongeldige database.','Databases verwijderd.','Database selecteren','Nieuwe database','Proceslijst','Variabelen','Status','%s versie: %s met PHP extensie %s','Aangemeld als: %s','Collatie','Tabellen','Verwijderen','Vernieuwen','Schema','Ongeldig schema.','Geen rijen.','%.3f s','Foreign keys','collation','ON DELETE','Kolomnaam','Parameternaam','Type','Lengte','Opties','Auto nummering','Standaard waarden','Commentaar','Volgende toevoegen','Omhoog','Omlaag','Verwijderen','View','Tabel','Kolom','Indexen','Indexen aanpassen','Bron','Doel','ON UPDATE','Aanpassen','Foreign key aanmaken','Triggers','Trigger aanmaken','Permanente link','Exporteren','Uitvoer','Formaat','Procedures','Events','Data','Gebruiker aanmaken','Fout in query',array('%d rij','%d rijen'),array('Query uitgevoerd, %d rij geraakt.','Query uitgevoerd, %d rijen geraakt.'),'Geen opdrachten uit te voeren.',array('%d query succesvol uitgevoerd.','%d querys succesvol uitgevoerd'),'Bestand uploaden','Bestanden uploaden is uitgeschakeld.','Uitvoeren','Stoppen bij fout','Enkel fouten tonen','Van server','Webserver bestand %s','Bestand uitvoeren','Geschiedenis','Wissen','Alles bewerken','Item verwijderd.','Item aangepast.','Item%s toegevoegd.','Toevoegen','Opslaan','Opslaan en verder bewerken','Opslaan, daarna toevoegen','Verwijderen','Tabel verwijderd.','Tabel aangepast.','Tabel aangemaakt.','Tabel aanmaken','Maximum aantal velden bereikt. Verhoog %s en %s.','Tabelnaam','engine','Partitioneren op','Partities','Partitie naam','Waarden','Index aangepast.','Index type','Kolom (lengte)','Naam','Database verwijderd.','Database hernoemd.','Database aangemaakt.','Database aangepast.','Database aanmaken','Schema verwijderd.','Schema aangemaakt.','Schema gewijzigd.','Uitvoeren',array('Procedure uitgevoerd, %d rij geraakt.','Procedure uitgevoerd, %d rijen geraakt.'),'Foreign key verwijderd.','Foreign key aangepast.','Foreign key aangemaakt.','Bron- en doelkolommen moeten van hetzelfde data type zijn, er moet een index bestaan op de gekozen kolommen en er moet gerelateerde data bestaan.','Foreign key','Doeltabel','Veranderen','Kolom toevoegen','View verwijderd.','View aangepast.','View aangemaakt.','View aanmaken','Event werd verwijderd.','Event werd aangepast.','Event werd aangemaakt.','Event aanpassen','Event aanmaken','Start','Stop','Iedere','Bewaren na voltooiing','Procedure verwijderd.','Procedure aangepast.','Procedure aangemaakt.','Functie aanpassen','Procedure aanpassen','Functie aanmaken','Procedure aanmaken','Return type','Sequence verwijderd.','Sequence aangemaakt.','Sequence gewijzigd.','Sequence wijzigen','Sequence maken','Type verwijderd.','Type aangemaakt.','Type wijzigen','Type maken','Trigger verwijderd.','Trigger aangepast.','Trigger aangemaakt.','Trigger aanpassen','Trigger aanmaken','Time','Event','Gebruiker verwijderd.','Gebruiker aangepast.','Gebruiker aangemaakt.','Gehashed','Routine','Toekennen','Intrekken',array('%d proces gestopt.','%d processen gestopt.'),'%d in totaal','Stoppen',array('%d item aangepast.','%d items aangepast.'),'Dubbelklik op een waarde om deze te bewerken.',array('%d rij werd geïmporteerd.','%d rijen werden geïmporteerd.'),'Onmogelijk tabel te selecteren','bewerk','Relaties','Gebruik de link "bewerk" om deze waarde te wijzigen.','Pagina','laatste','volledig resultaat','Dupliceer','Importeren','Tabellen werden geleegd.','Tabellen werden verplaatst.','De tabellen zijn gekopieerd.','Tabellen werden verwijderd.','Tables have been optimized.','Tabellen en views','Zoeken in database','Engine','Data lengte','Index lengte','Data Vrij','Rijen','Analyseer','Optimaliseer','Controleer','Herstel','Legen','Verplaats naar andere database','Verplaats','Kopieren','Sequences','Schedule','Op aangegeven tijd','HH:MM:SS');break;case"es":$R=array('Está seguro?','No es posible importar archivo.','Tamaño máximo de archivo es %sB.','Archivo no existe.','ningúno','original','No existen tablas.',' ','Idioma','Usar','Por favor use una de las extensiones %s.','Archivo ya existe.','Tipos definido por el usuario','Números','Fecha y hora','Cadena','Binario','Red','Geometría','Listas','Motor de base de datos','Servidor','Usuario','Contraseña','Base de datos','Login','Guardar contraseña','Visualizar contenido','Mostrar estructura','Modificar vista','Modifique estructura','Nuevo Registro','Ultima página','Modificar',array('%d byte','%d bytes'),'Mostrar','Funciones','Agregaciones','Condición','donde sea','Ordenar','descendiente','Limit','Longitud de texto','Acción','Full table scan','Comando SQL','mostrar','archivo','Modificar Base de datos','Modificar esquema','Crear esquema','Esquema de base de datos','Privilegios','Export','Logout','base de datos','esquema','Nueva tabla','registros','ltr','Token CSRF inválido. Vuelva a enviar los datos del formulario.','Salida exitosa.','Deben estar habilitadas las sesiones.','Sesión expirada, por favor ingrese su clave de nuevo.','Identificacion inválida.','No hay extension','Ninguna de las extensiones PHP soportadas (%s) está disponible.','POST data demasiado grande. Reduzca el tamaño o aumente la directiva de configuración %s.','Base de datos inválida.','Bases de datos eliminadas.','Seleccionar Base de datos','Ingrese nueva base de datos','Lista de procesos','Variables','Estado','Versión %s: %s a través de extensión PHP %s','Logeado como: %s','Colación','Tablas','Eliminar','Refrescar','Esquema','Esquema inválido.','No existen registros.','%.3f s','Claves foráneas','colación','ON DELETE','Nombre de columna','Nombre de Parámetro','Tipo','Longitud','Opciones','Incremento automático','Valores predeterminados','Comentario','Agregar','Mover arriba','Mover abajo','Eliminar','Vistas','Tabla','Columna','Indices','Modificar indices','Origen','Destino','ON UPDATE','Modificar','Agregar clave foránea','Triggers','Agregar trigger','Enlace permanente','Exportar','Salida','Formato','Procedimientos','Eventos','Datos','Crear Usuario','Error en consulta',array('%d registro','%d registros'),array('Consulta ejecutada, %d registro afectado.','Consulta ejecutada, %d registros afectados.'),'No hay comando para ejecutar.',array('%d sentencia sql ejecutada correctamente.','%d sentencias sql ejecutadas correctamente.'),'Importar archivo','Importación de archivos deshablilitado.','Ejecutar','Parar en caso de error','Mostrar solamente errores','Desde servidor','Archivo de servidor web %s','Ejecutar Archivo','History','Vaciar','Editar todos','Registro eliminado.','Registro modificado.','Registro%s insertado.','Agregar','Guardar','Guardar y continuar editando','Guardar e insertar otro','Eliminar','Tabla eliminada.','Tabla modificada.','Tabla creada.','Crear tabla','Cantida máxima de campos permitidos excedidos. Por favor aumente %s y %s.','Nombre de la tabla','motor','Particionar por','Particiones','Nombre de Partición','Valores','Indices modificados.','Tipo de índice','Columna (longitud)','Nombre','Base de datos eliminada.','Base de datos renombrada.','Base de datos creada.','Base de datos modificada.','Crear Base de datos','Esquema eliminado.','Esquema creado.','Esquema modificado.','Llamar',array('Consulta ejecutada, %d registro afectado.','Consulta ejecutada, %d registros afectados.'),'Clave externa eliminada.','Clave externa modificada.','Clave externa creada.','Las columnas de origen y destino deben ser del mismo tipo, debe existir un índice entre las columnas del destino y el registro referenciado debe existir.','Clave externa','Tabla de destino','Modificar','Agregar columna','Vista eliminada.','Vista modificada.','Vista creada.','Crear vista','Evento eliminado.','Evento modificado.','Evento creado.','Modificar Evento','Crear Evento','Inicio','Fin','Cada','Al completar preservar','Procedimiento eliminado.','Procedimiento modificado.','Procedimiento creado.','Modificar Función','Modificar procedimiento','Crear función','Crear procedimiento','Tipo de valor de regreso','Secuencia eliminada.','Secuencia creada.','Secuencia modificada.','Modificar secuencia','Crear secuencias','Tipo eliminado.','Tipo creado.','Modificar tipo','Crear tipo','Trigger eliminado.','Trigger modificado.','Trigger creado.','Modificar Trigger','Agregar Trigger','Tiempo','Evento','Usuario eliminado.','Usuario modificado.','Usuario creado.','Hash','Rutina','Conceder','Impedir',array('%d proceso detenido.','%d procesos detenidos.'),'%d en total','Detener',array('%d ítem afectado.','%d itemes afectados.'),'Doble-clic sobre el valor para editarlo.',array('%d registro importado.','%d registros importados.'),'No es posible seleccionar la tabla','modificar','Relaciones','Utilice el enlace de modificar para realizar los cambios.','Página','último','resultado completo','Clonar','Importar','Tablas vaciadas (truncate).','Se movieron las tablas.','Tablas copiadas.','Tablas eliminadas.','Tables have been optimized.','Tablas y vistas','Buscar datos en tablas','Motor','Longitud de datos','Longitud de índice','Espacio libre','Registros','Analizar','Optimizar','Comprobar','Reparar','Vaciar','Mover a otra base de datos','Mover','Copiar','Secuencias','Agenda','A hora determinada','HH:MM:SS');break;case"de":$R=array('Sind Sie sicher ?','Hochladen von Datei fehlgeschlagen.','Maximal erlaubte Dateigrösse ist %sB.','Datei existiert nicht.','leer','Original','Keine Tabellen.',' ','Sprache','Benutzung','Bitte einen der Dateitypen %s benutzen.','Datei existiert schon.','Benutzer-definierte Typen','Zahlen','Datum oder Zeit','Zeichenketten','Binär','Netzwerk','Geometrie','Listen','Datenbank System','Server','Benutzer','Passwort','Datenbank','Login','Passwort speichern','Daten auswählen','Struktur anzeigen','View ändern','Tabelle ändern','Neuer Datensatz','Letzte Seite','Ändern',array('%d Byte','%d Bytes'),'Daten zeigen von','Funktionen','Agregationen','Suchen','beliebig','Ordnen','absteigend','Begrenzung','Textlänge','Aktion','Full table scan','SQL-Query','anzeigen','Datei','Datenbank ändern','Schema ändern','Neues Schema','Datenbankschema','Rechte','Export','Abmelden','Datenbank','Schema','Neue Tabelle','zeigen','ltr','CSRF Token ungültig. Bitte die Formulardaten erneut abschicken.','Abmeldung erfolgreich.','Sitzungen müssen aktiviert sein.','Sitzungsdauer abgelaufen, bitte erneut anmelden.','Ungültige Anmelde-Informationen.','Keine Erweiterungen installiert','Keine der unterstützten PHP-Erweiterungen (%s) ist vorhanden.','POST data zu gross. Reduzieren Sie die Grösse oder vergrössern Sie den Wert %s in der Konfiguration.','Datenbank ungültig.','Datenbanken entfernt.','Datenbank auswählen','Neue Datenbank','Prozessliste','Variablen','Status','Version %s: %s, mit PHP-Erweiterung %s','Angemeldet als: %s','Collation','Tabellen','Entfernen','Aktualisieren','Schema','Schema nicht gültig.','Keine Daten.','%.3f s','Fremdschlüssel','Kollation','ON DELETE','Spaltenname','Name des Parameters','Typ','Länge','Optionen','Auto-Inkrement','Vorgabewerte festlegen','Kommentar','Hinzufügen','Nach oben','Nach unten','Entfernen','View','Tabelle','Spalte','Indizes','Indizes ändern','Ursprung','Ziel','ON UPDATE','Ändern','Fremdschlüssel hinzufügen','Trigger','Trigger hinzufügen','Dauerhafter Link','Exportieren','Ergebnis','Format','Prozeduren','Ereignisse','Daten','Neuer Benutzer','Fehler in der SQL-Abfrage',array('%d Datensatz','%d Datensätze'),array('Abfrage ausgeführt, %d Datensatz betroffen.','Abfrage ausgeführt, %d Datensätze betroffen.'),'Kein Kommando vorhanden.',array('SQL-Query erfolgreich ausgeführt.','%d SQL-Queries erfolgreich ausgeführt.'),'Datei importieren','Importieren von Dateien abgeschaltet.','Ausführen','Bei Fehler anhalten','Nur Fehler anzeigen','Im Server','Webserver Datei %s','Datei ausführen','History','Entleeren','Alle ändern','Datensatz gelöscht.','Datensatz geändert.','Datensatz%s hinzugefügt.','Hinzufügen','Speichern','Speichern und weiter bearbeiten','Speichern und nächsten hinzufügen','Entfernen','Tabelle entfernt.','Tabelle geändert.','Tabelle erstellt.','Neue Tabelle erstellen','Die maximal erlaubte Anzahl der Felder ist überschritten. Bitte %s und %s erhöhen.','Name der Tabelle','Motor','Partitionieren um','Partitionen','Name der Partition','Werte','Indizes geändert.','Index-Typ','Spalte (Länge)','Name','Datenbank entfernt.','Datenbank umbenannt.','Datenbank erstellt.','Datenbank geändert.','Neue Datenbank','Schema wurde gelöscht.','Neues Schema erstellt.','Schema geändert.','Aufrufen',array('Kommando SQL ausgeführt, %d Datensatz betroffen.','Kommando SQL ausgeführt, %d Datensätze betroffen.'),'Fremdschlüssel entfernt.','Fremdschlüssel geändert.','Fremdschlüssel erstellt.','Spalten des Ursprungs und des Zieles müssen vom gleichen Datentyp sein, es muss unter den Zielspalten ein Index existieren und die referenzierten Daten müssen existieren.','Fremdschlüssel','Zieltabelle','Ändern','Spalte hinzufügen','View entfernt.','View geändert.','View erstellt.','Neue View erstellen','Ereignis entfernt.','Ereignis geändert.','Ereignis erstellt.','Ereignis ändern','Ereignis erstellen','Start','Ende','Jede','Nach der Ausführung erhalten','Prozedur entfernt.','Prozedur geändert.','Prozedur erstellt.','Funktion ändern','Prozedur ändern','Neue Funktion','Neue Prozedur','Typ des Rückgabewertes','Sequenz gelöscht.','Neue Sequenz erstellt.','Sequenz geändert.','Sequenz ändern','Neue Sequenz','Typ gelöscht.','Typ erstellt.','Typ ändern','Typ erstellen','Trigger entfernt.','Trigger geändert.','Trigger erstellt.','Trigger ändern','Trigger hinzufügen','Zeitpunkt','Ereignis','Benutzer entfernt.','Benutzer geändert.','Benutzer erstellt.','Hashed','Rutine','Erlauben','Verbieten',array('%d Prozess gestoppt.','%d Prozesse gestoppt.'),'%d insgesamt','Anhalten','%d Artikel betroffen.','Doppelklick zum Bearbeiten des Wertes.',array('%d Datensatz importiert.','%d Datensätze wurden importiert.'),'Auswahl der Tabelle fehlgeschlagen','ändern','Relationen','Benutzen Sie den Link zum editieren dieses Wertes.','Seite','letzte','Gesamtergebnis','Klonen','Importieren','Tabellen sind entleert worden (truncate).','Tabellen verschoben.','Tabellen wurden kopiert.','Tabellen wurden entfernt (drop).','Tables have been optimized.','Tabellen und Views','Suche in Tabellen','Motor','Datengrösse','Indexgrösse','Freier Bereich','Datensätze','Analysieren','Optimieren','Prüfen','Reparieren','Entleeren (truncate)','In andere Datenbank verschieben','Verschieben','Kopieren','Sequenz','Zeitplan','Zur angegebenen Zeit','HH:MM:SS');break;case"fr":$R=array('Êtes-vous certain ?','Impossible d\'importer le fichier.','La taille maximale des fichiers est de %sB.','Le fichier est introuvable.','vide','original','Aucune table.',',','Langue','Utiliser','Veuillez utiliser l\'une des extensions %s.','Le fichier existe.','Types utilisateur','Nombres','Date et heure','Chaînes','Binaires','Réseau','Géométrie','Listes','Système','Serveur','Utilisateur','Mot de passe','Base de données','Authentification','Authentification permanente','Afficher les données','Afficher la structure','Modifier une vue','Modifier la table','Nouvel élément','Dernière page','Modifier',array('%d octet','%d octets'),'Select','Fonctions','Agrégation','Rechercher','n\'importe où','Trier','décroissant','Limite','Longueur du texte','Action','Full table scan','Requête SQL','ouvrir','sauvegarder','Modifier la base de données','Modifier le schéma','Créer un schéma','Schéma de la base de données','Privilèges','Exporter','Déconnexion','base de données','schéma','Créer une nouvelle table','select','ltr','Token CSRF invalide. Veuillez réenvoyer le formulaire.','Au revoir !','Veuillez activer les sessions.','Session expirée, veuillez vous authentifier à nouveau.','Authentification échouée.','Extension introuvable','Aucune des extensions PHP supportées (%s) n\'est disponible.','Données POST trop grandes. Réduisez la taille des données ou augmentez la valeur de %s dans la configuration de PHP.','Base de données invalide.','Les bases de données ont été supprimées.','Sélectionner la base de données','Créer une base de données','Liste des processus','Variables','Statut','Version de %s : %s via l\'extension PHP %s','Authentifié en tant que : %s','Interclassement','Tables','Supprimer','Rafraîchir','Schéma','Schéma invalide.','Aucun résultat.','%.3f s','Clés étrangères','interclassement','ON DELETE','Nom de la colonne','Nom du paramètre','Type','Longueur','Options','Auto increment','Valeurs par défaut','Commentaire','Ajouter le prochain','Déplacer vers le haut','Déplacer vers le bas','Effacer','Vue','Table','Colonne','Index','Modifier les index','Source','Cible','ON UPDATE','Modifier','Ajouter une clé étrangère','Triggers','Ajouter un trigger','Lien permanent','Exporter','Sortie','Format','Routines','Évènements','Données','Créer un utilisateur','Erreur dans la requête',array('%d ligne','%d lignes'),array('Requête exécutée avec succès, %d ligne modifiée.','Requête exécutée avec succès, %d lignes modifiées.'),'Aucune commande à exécuter.',array('%d requête exécutée avec succès.','%d requêtes exécutées avec succès.'),'Importer un fichier','L\'importation de fichier est désactivée.','Exécuter','Arrêter en cas d\'erreur','Montrer seulement les erreurs','Depuis le serveur','Fichier %s du serveur Web','Exécuter le fichier','Historique','Effacer','Tout modifier','L\'élément a été supprimé.','L\'élément a été modifié.','L\'élément%s a été inséré.','Insérer','Sauvegarder','Sauvegarder et continuer l\'édition','Sauvegarder et insérer le prochain','Effacer','La table a été effacée.','La table a été modifiée.','La table a été créée.','Créer une table','Le nombre maximum de champs est dépassé. Veuillez augmenter %s et %s.','Nom de la table','moteur','Partitionner par','Partitions','Nom de la partition','Valeurs','Index modifiés.','Type d\'index','Colonne (longueur)','Nom','La base de données a été supprimée.','La base de données a été renommée.','La base de données a été créée.','La base de données a été modifiée.','Créer une base de données','Le schéma a été supprimé.','Le schéma a été créé.','Le schéma a été modifié.','Appeler',array('La routine a été exécutée, %d ligne modifiée.','La routine a été exécutée, %d lignes modifiées.'),'La clé étrangère a été effacée.','La clé étrangère a été modifiée.','La clé étrangère a été créée.','Les colonnes de source et de destination doivent être du même type, il doit y avoir un index sur les colonnes de destination et les données référencées doivent exister.','Clé étrangère','Table visée','Modifier','Ajouter une colonne','La vue a été effacée.','La vue a été modifiée.','La vue a été créée.','Créer une vue','L\'évènement a été supprimé.','L\'évènement a été modifié.','L\'évènement a été créé.','Modifier un évènement','Créer un évènement','Démarrer','Terminer','Chaque','Conserver quand complété','La routine a été supprimée.','La routine a été modifiée.','La routine a été créée.','Modifier la fonction','Modifier la procédure','Créer une fonction','Créer une procédure','Type de retour','La séquence a été supprimée.','La séquence a été créée.','La séquence a été modifiée.','Modifier la séquence','Créer une séquence','Le type a été supprimé.','Le type a été créé.','Modifier le type','Créer un type','Le trigger a été supprimé.','Le trigger a été modifié.','Le trigger a été créé.','Modifier un trigger','Ajouter un trigger','Temps','Évènement','L\'utilisateur a été effacé.','L\'utilisateur a été modifié.','L\'utilisateur a été créé.','Haché','Routine','Grant','Revoke',array('%d processus a été arrêté.','%d processus ont été arrêtés.'),'%d au total','Arrêter',array('%d élément a été modifié.','%d éléments ont été modifiés.'),'Double-cliquez sur une valeur pour la modifier.',array('%d ligne a été importée.','%d lignes ont été importées.'),'Impossible de sélectionner la table','modifier','Relations','Utilisez le lien "modifier" pour modifier cette valeur.','Page','dernière','résultat entier','Cloner','Importer','Les tables ont été tronquées.','Les tables ont été déplacées.','Les tables ont été copiées.','Les tables ont été effacées.','Tables have been optimized.','Tables et vues','Rechercher dans les tables','Moteur','Longueur des données','Longueur de l\'index','Espace inutilisé','Lignes','Analyser','Optimiser','Vérifier','Réparer','Tronquer','Déplacer vers une autre base de données','Déplacer','Copier','Séquences','Horaire','À un moment précis','HH:MM:SS');break;case"it":$R=array('Sicuro?','Caricamento del file non riuscito.','La dimensione massima del file è %sB.','Il file non esiste.','vuoto','originale','No tabelle.','.','Lingua','Usa','Usa una delle estensioni %s.','Il file esiste già.','Tipi definiti dall\'utente','Numeri','Data e ora','Stringhe','Binari','Rete','Geometria','Liste','Sistema','Server','Utente','Password','Database','Autenticazione','Login permanente','Visualizza dati','Visualizza struttura','Modifica vista','Modifica tabella','Nuovo elemento','Ultima pagina','Modifica',array('%d byte','%d bytes'),'Seleziona','Funzioni','Aggregazione','Cerca','ovunque','Ordina','discendente','Limite','Lunghezza testo','Azione','Full table scan','Comando SQL','apri','salva','Modifica database','Modifica schema','Crea schema','Schema database','Privilegi','Dump','Esci','database','schema','Crea nuova tabella','seleziona','ltr','Token CSRF non valido. Reinvia la richiesta.','Uscita effettuata con successo.','Le sessioni devono essere abilitate.','Sessione scaduta, autenticarsi di nuovo.','Credenziali non valide.','Estensioni non presenti','Nessuna delle estensioni PHP supportate (%s) disponibile.','Troppi dati via POST. Ridurre i dati o aumentare la direttiva di configurazione %s.','Database non valido.','Database eliminati.','Seleziona database','Crea nuovo database','Elenco processi','Variabili','Stato','Versione %s: %s via estensione PHP %s','Autenticato come: %s','Collazione','Tabelle','Elimina','Aggiorna','Schema','Schema non valido.','Nessuna riga.','%.3f s','Chiavi esterne','collazione','ON DELETE','Nome colonna','Nome parametro','Tipo','Lunghezza','Opzioni','Auto incremento','Valori predefiniti','Commento','Aggiungi altro','Sposta su','Sposta giu','Rimuovi','Vedi','Tabella','Colonna','Indici','Modifica indici','Sorgente','Obiettivo','ON UPDATE','Modifica','Aggiungi foreign key','Trigger','Aggiungi trigger','Link permanente','Esporta','Risultato','Formato','Routine','Eventi','Dati','Crea utente','Errore nella query',array('%d riga','%d righe'),array('Esecuzione della query OK, %d riga interessata.','Esecuzione della query OK, %d righe interessate.'),'Nessun commando da eseguire.',array('%d query eseguita con successo.','%d query eseguite con successo.'),'Caricamento file','Caricamento file disabilitato.','Esegui','Stop su errore','Mostra solo gli errori','Dal server','Webserver file %s','Esegui file','Storico','Pulisci','Modifica tutto','Elemento eliminato.','Elemento aggiornato.','Elemento%s inserito.','Inserisci','Salva','Salva e continua','Salva e inserisci un altro','Elimina','Tabella eliminata.','Tabella modificata.','Tabella creata.','Crea tabella','Troppi campi. Per favore aumentare %s e %s.','Nome tabella','motore','Partiziona per','Partizioni','Nome partizione','Valori','Indici modificati.','Tipo indice','Colonna (lunghezza)','Nome','Database eliminato.','Database rinominato.','Database creato.','Database modificato.','Crea database','Schema eliminato.','Schema creato.','Schema modificato.','Chiama',array('Routine chiamata, %d riga interessata.','Routine chiamata, %d righe interessate.'),'Foreign key eliminata.','Foreign key modificata.','Foreign key creata.','Le colonne sorgente e destinazione devono essere dello stesso tipo e ci deve essere un indice sulla colonna di destinazione e sui dati referenziati.','Foreign key','Tabella obiettivo','Cambia','Aggiungi colonna','Vista eliminata.','Vista modificata.','Vista creata.','Crea vista','Evento eliminato.','Evento modificato.','Evento creato.','Modifica evento','Crea evento','Inizio','Fine','Ogni','Al termine preservare','Routine eliminata.','Routine modificata.','Routine creata.','Modifica funzione','Modifica procedura','Crea funzione','Crea procedura','Return type','Sequenza eliminata.','Sequenza creata.','Sequenza modificata.','Modifica sequenza','Crea sequenza','Tipo definito dall\'utente eliminato.','Tipo definito dall\'utente creato.','Modifica tipo definito dall\'utente','Crea tipo definito dall\'utente','Trigger eliminato.','Trigger modificato.','Trigger creato.','Modifica trigger','Crea trigger','Orario','Evento','Utente eliminato.','Utente modificato.','Utente creato.','Hashed','Routine','Permetti','Revoca',array('%d processo interrotto.','%d processi interrotti.'),'%d in totale','Interrompi',array('Il risultato consiste in %d elemento.','Il risultato consiste in %d elementi.'),'Fai doppio click su un valore per modificarlo.',array('%d riga importata.','%d righe importate.'),'Selezione della tabella non riuscita','modifica','Relazioni','Usa il link modifica per modificare questo valore.','Pagina','ultima','intero risultato','Clona','Importa','Le tabelle sono state svuotate.','Le tabelle sono state spostate.','Le tabelle sono state copiate.','Le tabelle sono state eliminate.','Tables have been optimized.','Tabelle e viste','Cerca nelle tabelle','Motore','Lunghezza dato','Lunghezza indice','Dati liberi','Righe','Analizza','Ottimizza','Controlla','Ripara','Svuota','Sposta in altro database','Sposta','Copia','Sequenza','Pianifica','A tempo prestabilito','HH:MM:SS');break;case"et":$R=array('Kas oled kindel?','Faili üleslaadimine pole võimalik.','Maksimaalne failisuurus %sB.','Faili ei leitud.','tühi','originaal','Tabeleid ei leitud.',',','Keel','Kasuta','Palun kasuta üht laiendustest %s.','Fail juba eksisteerib.','Kasutajatüübid','Numbrilised','Kuupäev ja kellaaeg','Tekstid','Binaar','Võrk (network)','Geomeetria','Listid','Andmebaasimootor','Server','Kasutajanimi','Parool','Andmebaas','Logi sisse','Jäta mind meelde','Vaata andmeid','Näita struktuuri','Muuda vaadet (VIEW)','Muuda tabeli struktuuri','Lisa kirje','Viimane lehekülg','Muuda',array('%d bait','%d baiti'),'Kuva','Funktsioonid','Liitmine','Otsi','vahet pole','Sorteeri','kahanevalt','Piira','Teksti pikkus','Tegevus','Full table scan','SQL-Päring','näita brauseris','salvesta failina','Muuda andmebaasi','Muuda struktuuri','Loo struktuur','Andmebaasi skeem','Õigused','Ekspordi','Logi välja','andmebaas','struktuur','Loo uus tabel','kuva','ltr','Sobimatu CSRF, palun postitage vorm uuesti.','Väljalogimine õnnestus.','Sessioonid peavad olema lubatud.','Sessioon on aegunud, palun logige uuesti sisse.','Ebakorrektsed andmed.','Ei leitud laiendust','Serveris pole ühtegi toetatud PHP laiendustest (%s).','POST-andmete maht on liialt suur. Palun vähendage andmeid või suurendage %s php-seadet.','Tundmatu andmebaas.','Andmebaasid on edukalt kustutatud.','Vali andmebaas','Loo uus andmebaas','Protsesside nimekiri','Muutujad','Staatus','%s versioon: %s, kasutatud PHP moodul: %s','Sisse logitud: %s','Tähetabel','Tabelid','Kustuta','Uuenda','Struktuur','Sobimatu skeema.','Sissekanded puuduvad.','%.3f s','Võõrvõtmed (foreign key)','tähetabel','ON DELETE','Veeru nimi','Parameetri nimi','Tüüp','Pikkus','Valikud','Automaatselt suurenev','Vaikimisi väärtused','Kommentaar','Lisa järgmine','Liiguta ülespoole','Liiguta allapoole','Eemalda','Vaata','Tabel','Veerg','Indeksid','Muuda indekseid','Allikas','Sihtkoht','ON UPDATE','Muuda','Lisa võõrvõti','Päästikud (trigger)','Lisa päästik (TRIGGER)','Püsilink','Ekspordi','Väljund','Formaat','Protseduurid','Sündmused (EVENTS)','Andmed','Loo uus kasutaja','Päringus esines viga','%d rida','Päring õnnestus, mõjutatatud ridu: %d.','Käsk puudub.',array('%d päring edukalt käivitatud.','%d päringut edukalt käivitatud.'),'Faili üleslaadimine','Failide üleslaadimine on keelatud.','Käivita','Peatuda vea esinemisel','Kuva vaid veateateid','Serverist','Fail serveris: %s','Käivita fail','Ajalugu','Puhasta','Muuda kõiki','Kustutamine õnnestus.','Uuendamine õnnestus.','Kirje%s on edukalt lisatud.','Sisesta','Salvesta','Salvesta ja jätka muutmist','Salvesta ja lisa järgmine','Kustuta','Tabel on edukalt kustutatud.','Tabeli andmed on edukalt muudetud.','Tabel on edukalt loodud.','Loo uus tabel','Maksimaalne väljade arv ületatud. Palun suurendage %s ja %s.','Tabeli nimi','andmebaasimootor','Partitsiooni','Partitsioonid','Partitsiooni nimi','Väärtused','Indeksite andmed on edukalt uuendatud.','Indeksi tüüp','Veerg (pikkus)','Nimi','Andmebaas on edukalt kustutatud.','Andmebaas on edukalt ümber nimetatud.','Andmebaas on edukalt loodud.','Andmebaasi struktuuri uuendamine õnnestus.','Loo uus andmebaas','Struktuur on edukalt kustutatud.','Struktuur on edukalt loodud.','Struktuur on edukalt muudetud.','Käivita','Protseduur täideti edukalt, mõjutatud ridu: %d.','Võõrvõti on edukalt kustutatud.','Võõrvõtme andmed on edukalt muudetud.','Võõrvõri on edukalt loodud.','Lähte- ja sihtveerud peavad eksisteerima ja omama sama andmetüüpi, sihtveergudel peab olema määratud indeks ning viidatud andmed peavad eksisteerima.','Võõrvõti','Siht-tabel','Muuda','Lisa veerg','Vaade (VIEW) on edukalt kustutatud.','Vaade (VIEW) on edukalt muudetud.','Vaade (VIEW) on edukalt loodud.','Loo uus vaade (VIEW)','Sündmus on edukalt kustutatud.','Sündmuse andmed on edukalt uuendatud.','Sündmus on edukalt loodud.','Muuda sündmuse andmeid','Loo uus sündmus (EVENT)','Alusta','Lõpeta','Iga','Lõpetamisel jäta sündmus alles','Protseduur on edukalt kustutatud.','Protseduuri andmed on edukalt muudetud.','Protseduur on edukalt loodud.','Muuda funktsiooni','Muuda protseduuri','Loo uus funktsioon','Loo uus protseduur','Tagastustüüp','Jada on edukalt kustutatud.','Jada on edukalt loodud.','Jada on edukalt muudetud.','Muuda jada','Loo jada','Tüüp on edukalt kustutatud.','Tüüp on edukalt loodud.','Muuda tüüpi','Loo tüüp','Päästik on edukalt kustutatud.','Päästiku andmed on edukalt uuendatud.','Uus päästik on edukalt loodud.','Muuda päästiku andmeid','Loo uus päästik (TRIGGER)','Aeg','Sündmus','Kasutaja on edukalt kustutatud.','Kasutaja andmed on edukalt muudetud.','Kasutaja on edukalt lisatud.','Häshitud (Hashed)','Protseduur','Anna','Eemalda',array('Protsess on edukalt peatatud (%d).','Valitud protsessid (%d) on edukalt peatatud.'),'Kokku: %d','Peata','Mõjutatud kirjeid: %d.','Väärtuse muutmiseks topelt-kliki sellel.','Imporditi %d rida.','Tabeli valimine ebaõnnestus','muuda','Seosed','Väärtuse muutmiseks kasuta muutmislinki.','Lehekülg','viimane','Täielikud tulemused','Kloon','Impordi','Validud tabelid on edukalt tühjendatud.','Valitud tabelid on edukalt liigutatud.','Tabelid on edukalt kopeeritud.','Valitud tabelid on edukalt kustutatud.','Tables have been optimized.','Tabelid ja vaated','Otsi kogu andmebaasist','Implementatsioon','Andmete pikkus','Indeksi pikkus','Vaba ruumi','Ridu','Analüüsi','Optimeeri','Kontrolli','Paranda','Tühjenda','Liiguta teise andmebaasi','Liiguta','Kopeeri','Jadad (sequences)','Ajakava','Antud ajahetkel','HH:MM:SS');break;case"hu":$R=array('Biztos benne?','Nem tudom feltölteni a fájlt.','A maximális fájlméret %s B.','A fájl nem létezik.','üres','eredeti','Nincs tábla.',' ','Nyelv','Használ','Használja a(z) %s kiterjesztést.','A fájl létezik.','Felhasználói típus','Szám','Dátum és id?','Szöveg','Bináris','Hálózat','Geometria','Lista','Adatbázis','Szerver','Felhasználó','Jelszó','Adatbázis','Belépés','Emlékezz rám','Tartalom','Struktúra','Nézet módosítása','Tábla módosítása','Új tétel','Utolsó oldal','Szerkeszt',array('%d bájt','%d bájt','%d bájt'),'Kiválasztás','Funkciók','Aggregálás','Keresés','bárhol','Sorba rendezés','csökken?','korlát','Szöveg hossz','M?velet','Full table scan','SQL parancs','megnyit','ment','Adatbázis módosítása','Séma módosítása','Séma létrehozása','Adatbázis séma','Privilégiumok','Exportálás','Kilépés','adatbázis','séma','Új tábla','kiválasztás','ltr','Érvénytelen CSRF azonosító. Küldd újra az ?rlapot.','Sikeres kilépés.','A munkameneteknek (session) engedélyezve kell lennie.','Munkamenet lejárt, jelentkezz be újra.','Érvénytelen adatok.','Nincs kiterjesztés','Nincs egy elérhet? támogatott PHP kiterjesztés (%s) sem.','Túl sok a POST adat! Csökkentsd az adat méretét, vagy növeld a %s beállítást.','Érvénytelen adatbázis.','Adatbázis eldobva.','Adatbázis kiválasztása','Új adatbázis','Folyamatok','Változók','Állapot','%s verzió: %s, PHP: %s','Belépve: %s','Egybevetés','Táblák','Eldob','Frissítés','Séma','Érvénytelen séma.','Nincs megjeleníthet? eredmény.','%.3f másodperc','Idegen kulcs','egybevetés','törléskor','Oszlop neve','Paraméter neve','Típus','Hossz','Opciók','Automatikus növelés','Alapértelmezett értékek','Megjegyzés','Következ? hozzáadása','Felfelé','Lefelé','Eltávolítás','Nézet','Tábla','Oszlop','Indexek','Index módosítása','Forrás','Cél','frissítéskor','Módosítás','Idegen kulcs hozzadása','Trigger','Trigger hozzáadása','Hivatkozás','Export','Kimenet','Formátum','Rutinok','Esemény','Adat','Felhasználó hozzáadása','Hiba a lekérdezésben',array('%d sor','%d sor','%d sor'),array('Lekérdezés sikeresen végrehajtva, %d sor érintett.','Lekérdezés sikeresen végrehajtva, %d sor érintett.','Lekérdezés sikeresen végrehajtva, %d sor érintett.'),'Nincs végrehajtható parancs.','%d sikeres lekérdezés.','Fájl feltöltése','A fájl feltöltés le van tiltva.','Végrehajt','Hiba esetén megáll','Csak a hibák mutatása','Szerverr?l','Webszerver fájl %s','Fájl futtatása','Történet','Törlés','Összes szerkesztése','A tétel törölve.','A tétel frissítve.','%s tétel beszúrva.','Beszúr','Mentés','Mentés és szerkesztés folytatása','Mentés és újat beszúr','Törlés','A tábla eldobva.','A tábla módosult.','A tábla létrejött.','Tábla létrehozása','A maximális mez?számot elérted. Növeld meg ezeket: %s, %s.','Tábla név','motor','Particionálás ezzel','Particiók','Partició neve','Értékek','Az indexek megváltoztak.','Index típusa','Oszop (méret)','Név','Az adatbázis eldobva.','Az adadtbázis átnevezve.','Az adatbázis létrejött.','Az adatbázis módosult.','Adatbázis létrehozása','Séma eldobva.','Séma létrejött.','Séma módosult.','Meghív',array('Rutin meghívva, %d sor érintett.','Rutin meghívva, %d sor érintett.','Rutin meghívva, %d sor érintett.'),'Idegen kulcs eldobva.','Idegen kulcs módosult.','Idegen kulcs létrejött.','A forrás és cél oszlopoknak azonos típusúak legyenek, a cél oszlopok indexeltek legyenek, és a hivatkozott adatnak léteznie kell.','Idegen kulcs','Cél tábla','Változtat','Oszlop hozzáadása','A nézet eldobva.','A nézet módosult.','A nézet létrejött.','Nézet létrehozása','Az esemény eldobva.','Az esemény módosult.','Az esemény létrejött.','Esemény módosítása','Esemény létrehozása','Kezd','Vége','Minden','Befejezéskor meg?rzi','A rutin eldobva.','A rutin módosult.','A rutin létrejött.','Funkció módosítása','Eljárás módosítása','Funkció létrehozása','Eljárás létrehozása','Visszatérési érték','Sorozat eldobva.','Sorozat létrejött.','Sorozat módosult.','Sorozat módosítása','Sorozat létrehozása','Típus eldobva.','Típus létrehozva.','Típus módosítása','Típus létrehozása','A trigger eldobva.','A trigger módosult.','A trigger létrejött.','Trigger módosítása','Trigger létrehozása','Id?','Esemény','A felhasználó eldobva.','A felhasználó módosult.','A felhasználó létrejött.','Hashed','Rutin','Engedélyezés','Visszavonás',array('%d folyamat leállítva.','%d folyamat leállítva.','%d folyamat leállítva.'),'összesen %d','Leállít',array('%d tétel érintett.','%d tétel érintett.','%d tétel érintett.'),'Kattints kétszer az értékre a szerkesztéshez.',array('%d sor importálva.','%d sor importálva.','%d sor importálva.'),'Nem tudom kiválasztani a táblát','szerkeszt','Reláció','Használd a szerkesztés hivatkozást ezen érték módosításához.','oldal','utolsó','összes eredményt mutatása','Klónoz','Importálás','A tábla felszabadítva.','Táblák áthelyezve.','Táblák átmásolva.','Táblák eldobva.','Tables have been optimized.','Táblák és nézetek','Keresés a táblákban','Motor','Méret','Index hossz','Adat szabad','Oszlop','Elemzés','Optimalizál','Ellen?rzés','Javít','Felszabadít','Áthelyezés másik adatbázisba','Áthelyez','Másolás','Sorozatok','Ütemzés','Megadott id?ben','óó:pp:mm');break;case"pl":$R=array('Czy jeste? pewien?','Wgranie pliku by?o niemo?liwe.','Maksymalna wielko?? pliku to %sB.','Plik nie istnieje.','puste','bez zmian','Brak tabel.',' ','J?zyk','Wybierz','Prosz? u?y? jednego z rozszerze?: %s.','Plik ju? istnieje.','Typy u?ytkownika','Numeryczne','Data i czas','Tekstowe','Binarne','Sie?','Geometria','Listy','Rodzaj bazy','Serwer','U?ytkownik','Has?o','Baza danych','Zaloguj si?','Zapami?taj sesj?','Poka? dane','Struktura tabeli','Zmie? perspektyw?','Zmie? tabel?','Nowy rekord','Ostatnia strona','Edytuj',array('%d bajt','%d bajty','%d bajtów'),'poka?','Funkcje','Agregacje','Szukaj','gdziekolwiek','Sortuj','malej?co','Limit','D?ugo?? tekstu','Czynno??','Full table scan','Zapytanie SQL','otwórz','zapisz','Zmie? baz? danych','Zmie? schemat','Utwórz schemat','Schemat bazy danych','Uprawnienia u?ytkowników','Eksport','Wyloguj','baza danych','schemat','Utwórz now? tabel?','przegl?daj','ltr','Nieprawid?owy token CSRF. Spróbuj wys?a? formularz ponownie.','Wylogowano pomy?lnie.','Wymagana jest obs?uga sesji w PHP.','Sesja wygas?a, zaloguj si? ponownie.','Nieprawid?owe dane logowania.','Brak rozszerzenia','?adne z rozszerze? PHP umo?liwiaj?cych po??czenie si? z baz? danych (%s) nie jest dost?pne.','Przes?ano zbyt du?o danych. Zmniejsz obj?to?? danych lub zwi?ksz zmienn? konfiguracyjn? %s.','Nie znaleziono bazy danych.','Bazy danych zosta?y usuni?te.','Wybierz baz? danych','Utwórz now? baz? danych','Lista procesów','Zmienne','Status','Wersja %s: %s za pomoc? %s','Zalogowany jako: %s','Porównywanie znaków','Tabele','Usu?','Od?wie?','Schemat','Nieprawid?owy schemat.','Brak rekordów.','%.3f s','Klucze obce','porównywanie znaków','W przypadku usuni?cia','Nazwa kolumny','Nazwa parametru','Typ','D?ugo??','Opcje','Auto Increment','Warto?ci domy?lne','Komentarz','Dodaj nast?pny','Przesu? w gór?','Przesu? w dó?','Usu?','Perspektywa','Tabela','Kolumna','Indeksy','Zmie? indeksy','?ród?o','Cel','W przypadku zmiany','Zmie?','Dodaj klucz obcy','Wyzwalacze','Dodaj wyzwalacz','Trwa?y link','Eksport','Rezultat','Format','Procedury i funkcje','Wydarzenia','Dane','Dodaj u?ytkownika','B??d w zapytaniu',array('%d rekord','%d rekordy','%d rekordów'),array('Zapytanie wykonane pomy?lnie, zmieniono %d rekord.','Zapytanie wykonane pomy?lnie, zmieniono %d rekordy.','Zapytanie wykonane pomy?lnie, zmieniono %d rekordów.'),'Nic do wykonania.',array('Pomy?lnie wykonano %d zapytanie.','Pomy?lnie wykonano %d zapytania.','Pomy?lnie wykonano %d zapyta?.'),'Wgranie pliku','Wgrywanie plików jest wy??czone.','Wykonaj','Zatrzymaj w przypadku b??du','Poka? tylko b??dy','Z serwera','Plik %s na serwerze','Uruchom z pliku','Historia','Wyczy??','Edytuj wszystkie','Rekord zosta? usuni?ty.','Rekord zosta? zaktualizowany.','Rekord%s zosta? dodany.','Dodaj','Zapisz zmiany','Zapisz i kontynuuj edycj?','Zapisz i dodaj nast?pny','Usu?','Tabela zosta?a usuni?ta.','Tabela zosta?a zmieniona.','Tabela zosta?a utworzona.','Utwórz tabel?','Przekroczono maksymaln? liczb? pól. Zwi?ksz %s i %s.','Nazwa tabeli','sk?adowanie','Partycjonowanie','Partycje','Nazwa partycji','Warto?ci','Indeksy zosta?y zmienione.','Typ indeksu','Kolumna (d?ugo??)','Nazwa','Baza danych zosta?a usuni?ta.','Nazwa bazy danych zosta?a zmieniona.','Baza danych zosta?a utworzona.','Baza danych zosta?a zmieniona.','Utwórz baz? danych','Schemat zosta? usuni?ty.','Schemat zosta? utworzony.','Schemat zosta? zmieniony.','Uruchom',array('Procedura zosta?a uruchomiona, zmieniono %d rekord.','Procedura zosta?a uruchomiona, zmieniono %d rekordy.','Procedura zosta?a uruchomiona, zmieniono %d rekordów.'),'Klucz obcy zosta? usuni?ty.','Klucz obcy zosta? zmieniony.','Klucz obcy zosta? utworzony.','?ród?owa i docelowa kolumna musz? by? tego samego typu, powinien istnie? indeks na docelowej kolumnie oraz musz? istnie? dane referencyjne.','Klucz obcy','Tabela docelowa','Zmie?','Dodaj kolumn?','Perspektywa zosta?a usuni?ta.','Perspektywa zosta?a zmieniona.','Perspektywa zosta?a utworzona.','Utwórz perspektyw?','Wydarzenie zosta?o usuni?te.','Wydarzenie zosta?o zmienione.','Wydarzenie zosta?o utworzone.','Zmie? wydarzenie','Utwórz wydarzenie','Pocz?tek','Koniec','Wykonuj co','Nie kasuj wydarzenia po przeterminowaniu','Procedura zosta?a usuni?ta.','Procedura zosta?a zmieniona.','Procedura zosta?a utworzona.','Zmie? funkcj?','Zmie? procedur?','Utwórz funkcj?','Utwórz procedur?','Zwracany typ','Sekwencja zosta?a usuni?ta.','Sekwencja zosta?a utworzona.','Sekwencja zosta?a zmieniona.','Zmie? sekwencj?','Utwórz sekwencj?','Typ zosta? usuni?ty.','Typ zosta? utworzony.','Zmie? typ','Utwórz typ','Wyzwalacz zosta? usuni?ty.','Wyzwalacz zosta? zmieniony.','Wyzwalacz zosta? utworzony.','Zmie? wyzwalacz','Utwórz wyzwalacz','Czas','Wydarzenie','U?ytkownik zosta? usuni?ty.','U?ytkownik zosta? zmieniony.','U?ytkownik zosta? dodany.','Zahashowane','Procedura','Uprawnienia','Usu? uprawnienia',array('Przerwano %d w?tek.','Przerwano %d w?tki.','Przerwano %d w?tków.'),'%d w sumie','Przerwij wykonywanie',array('Zmieniono %d rekord.','Zmieniono %d rekordy.','Zmieniono %d rekordów.'),'Kliknij podwójnie warto??, aby j? edytowa?.',array('%d rekord zosta? zaimportowany.','%d rekordy zosta?y zaimportowane.','%d rekordów zosta?o zaimportowanych.'),'Nie uda?o si? pobra? danych z tabeli','edytuj','Relacje','U?yj linku edycji aby zmieni? t? warto??.','Strona','ostatni','wybierz wszystkie','Duplikuj','Import','Tabele zosta?y opró?nione.','Tabele zosta?y przeniesione.','Tabele zosta?y skopiowane.','Tabele zosta?y usuni?te.','Tabele zosta?y zoptymalizowane.','Tabele i perspektywy','Wyszukaj we wszystkich tabelach','Sk?adowanie','Rozmiar danych','Rozmiar indeksów','Wolne miejsce','Liczba rekordów','Analizuj','Optymalizuj','Sprawd?','Napraw','Opró?nij','Przenie? do innej bazy danych','Przenie?','Kopiuj','Sekwencje','Harmonogram','O danym czasie','nie');break;case"ca":$R=array('Estàs segur?','Impossible adjuntar el fitxer.','La mida màxima permesa del fitxer és de %sB.','El fitxer no existeix.','buit','original','No hi ha cap taula.',',','Idioma','Utilitza','Si us plau, utilitza una de les extensions %s.','El fitxer ja existeix.','Tipus de l\'usuari','Nombres','Data i hora','Cadenes','Binari','Xarxa','Geometria','Llistes','Sistema','Servidor','Nom d\'usuari','Contrasenya','Base de dades','Inicia la sessió','Sessió permanent','Selecciona dades','Mostra l\'estructura','Modifica la vista','Modifica la taula','Nou element','Darrera plana','Edita',array('%d byte','%d bytes'),'Selecciona','Funcions','Agregació','Cerca','a qualsevol lloc','Ordena','descendent','Límit','Longitud del text','Acció','Full table scan','Ordre SQL','obre','desa','Modifica la base de dades','Modifica l\'esquema','Crea un esquema','Esquema de la base de dades','Privilegis','Exporta','Desconnecta','base de dades','esquema','Crea una nova taula','registres','ltr','Token CSRF invàlid. Torna a enviar el formulari.','Desconnexió correcta.','Cal que estigui permès l\'us de sessions.','La sessió ha expirat, torna a iniciar-ne una.','Credencials invàlids.','Cap extensió','No hi ha cap de les extensions PHP soporatades (%s) disponible.','Les dades POST són massa grans. Redueix les dades o incrementa la directiva de configuració %s.','Base de dades invàlida.','S\'han suprimit les bases de dades.','Selecciona base de dades','Crea una nova base de dades','Llista de processos','Variables','Estat','Versió %s: %s amb l\'extensió de PHP %s','Connectat com: %s','Compaginació','Taules','Suprimeix','Refresca','Esquema','Esquema invàlid.','No hi ha cap registre.','%.3f s','Claus foranes','compaginació','ON DELETE','Nom de la columna','Nom del paràmetre','Tipus','Llargada','Opcions','Increment automàtic','Valors per defecte','Comentari','Afegeix el següent','Mou a dalt','Mou a baix','Suprimeix','Vista','Taula','Columna','Índexs','Modifica els índexs','Font','Destí','ON UPDATE','Modifica','Afegeix una clau forana','Activadors','Afegeix un activador','Enllaç permanent','Exporta','Sortida','Format','Rutines','Events','Dades','Crea un usuari','Error en la consulta',array('%d registre','%d registres'),array('Consulta executada correctament, %d registre modificat.','Consulta executada correctament, %d registres modificats.'),'Cap comanda per executar.',array('%d consulta executada correctament.','%d consultes executades correctament.'),'Adjunta un fitxer','L\'ddjunció de fitxers està desactivada.','Executa','Atura en trobar un error','Mostra només els errors','En el servidor','Fitxer %s del servidor web','Executa el fitxer','Història','Suprimeix','Edita-ho tot','S\'ha suprmit l\'element.','S\'ha actualitzat l\'element.','S\'ha insertat l\'element%s.','Insereix','Desa','Desa i segueix editant','Desa i insereix el següent','Suprimeix','S\'ha suprimit la taula.','S\'ha modificat la taula.','S\'ha creat la taula.','Crea una taula','S\'ha assolit el nombre màxim de camps. Incrementa %s i %s.','Nom de la taula','motor','Fes particions segons','Particions','Nom de la partició','Valors','S\'han modificat els índexs.','Tipus d\'índex','Columna (longitud)','Nom','S\'ha suprimit la base de dades.','S\'ha canviat el nom de la base de dades.','S\'ha creat la base de dades.','S\'ha modificat la base de dades.','Crea una base de dades','S\'ha suprimit l\'esquema.','S\'ha creat l\'esquema.','S\'ha modificat l\'esquema.','Crida',array('S\'ha cridat la rutina, %d registre modificat.','S\'ha cridat la rutina, %d registres modificats.'),'S\'ha suprimit la clau forana.','S\'ha modificat la clau forana.','S\'ha creat la clau forana.','Les columnes origen i destí han de ser del mateix tipus, la columna destí ha d\'estar indexada i les dades referenciades han d\'existir.','Clau forana','Taula de destí','Canvi','Afegeix una columna','S\'ha suprimit la vista.','S\'ha modificat la vista.','S\'ha creat la vista.','Crea una vista','S\'ha suprimit l\'event.','S\'ha modificat l\'event.','S\'ha creat l\'event.','Modifica l\'event','Crea un event','Comença','Acaba','Cada','Conservar en completar','S\'ha suprimit la rutina.','S\'ha modificat la rutina.','S\'ha creat la rutina.','Modifica la funció','Modifica el procediment','Crea una funció','Crea un procediment','Tipus retornat','S\'ha suprimit la seqüència.','S\'ha creat la seqüència.','S\'ha modificat la seqüència.','Modifica la seqüència','Crea una seqüència','S\'ha suprimit el tipus.','S\'ha creat el tipus.','Modifica el tipus','Crea un tipus','S\'ha suprimit l\'activador.','S\'ha modificat l\'activador.','S\'ha creat l\'activador.','Modifica l\'activador','Crea un activador','Temps','Event','S\'ha suprimit l\'usuari.','S\'ha modificat l\'usuari.','S\'ha creat l\'usuari.','Hashed','Rutina','Grant','Revoke',array('S\'ha aturat %d procés.','S\'han aturat %d processos.'),'%d en total','Atura',array('S\'ha modificat %d element.','S\'han modificat %d elements.'),'Fes un doble clic a un valor per modificar-lo.',array('S\'ha importat %d registre.','S\'han importat %d registres.'),'Impossible seleccionar la taula','edita','Relacions','Utilitza l\'enllaç d\'edició per modificar aquest valor.','Plana','darrera','tots els resultats','Clona','Importa','S\'han escapçat les taules.','S\'han desplaçat les taules.','S\'han copiat les taules.','S\'han suprimit les taules.','Tables have been optimized.','Taules i vistes','Cerca dades en les taules','Motor','Longitud de les dades','Longitud de l\'índex','Espai lliure','Files','Analitza','Optimitza','Verifica','Repara','Escapça','Desplaça a una altra base de dades','Desplaça','Còpia','Seqüències','Horari','A un moment donat','HH:MM:SS');break;case"pt":$R=array('Está seguro?','Não é possível enviar o arquivo.','Tamanho máximo do arquivo é %sB.','Arquivo não existe.','vazio','original','Não existem tabelas.',' ','Idioma','Usar','Por favor use uma das extensões %s.','Arquivo já existe.','Tipos definido pelo usuário','Números','Data e hora','Cadena','Binário','Rede','Geometria','Listas','Motor de Base de dados','Servidor','Usuário','Senha','Base de dados','Entrar','Salvar Senha','Selecionar dados','Mostrar estrutura','Modificar vista','Modificar estrutura','Novo Registro','Última página','Modificar',array('%d byte','%d bytes'),'Selecionar','Funções','Adições','Procurar','qualquer local','Ordenar','decrescente','Limite','Tamanho de texto','Ação','Full table scan','Comando SQL','mostrar','salvas','Modificar Base de dados','Modificar esquema','Criar esquema','Esquema de Base de dados','Privilégios','Exportar','Sair','base de dados','esquema','Nova tabela','registros','ltr','Token CSRF inválido. Enviar o formulario novamente.','Saida bem sucedida.','Devem estar habilitadas as sessões.','Sessão expirada, por favor entre sua Chave de novo.','Identificação inválida.','Não há extension','Nenhuma das extensões PHP suportadas (%s) está disponivel.','POST data demasiado grande. Reduza o tamanho ou aumente a diretiva de configuração %s.','Base de dados inválida.','Bases de dados eliminadas.','Selecionar Base de dados','Criar nova base de dados','Lista de processos','Variáveis','Estado','Versão %s: %s através da extensão PHP %s','Logado como: %s','Colação','Tabelas','Remover','Atualizar','Esquema','Esquema inválido.','Não existem registros.','%.3f s','Chaves foráneas','collation','ON DELETE','Nome da coluna','Nome de Parâmetro','Tipo','Tamanho','Opções','Incremento Automático','Valores predeterminados','Comentário','Adicionar proximo','Mover acima','Mover abaixo','Remover','Visualizar','Tabela','Coluna','Índices','Modificar índices','Origem','Destino','ON UPDATE','Modificar','Adicionar Chave foránea','Triggers','Adicionar trigger','Permanent link','Exportar','Saída','Formato','Procedimentos','Eventos','Dados','Criar Usuário','Erro na consulta',array('%d registro','%d registros'),array('Consulta executada, %d registro afetado.','Consulta executada, %d registros afetados.'),'Nenhum comando para executar.',array('%d consulta sql executada corretamente.','%d consultas sql executadas corretamente.'),'Importar arquivo','Importação de arquivos desablilitada.','Executar','Parar em caso de erro','Mostrar somente erros','Desde servidor','Arquivo do servidor web %s','Executar Arquivo','Histórico','Limpar','Edit all','Registro eliminado.','Registro modificado.','Registro%s inserido.','Inserir','Salvar','Salvar e continuar editando','Salvar e inserir outro','Apagar','Tabela eliminada.','Tabela modificada.','Tabela criada.','Criar tabela','Quantidade máxima de campos permitidos excedidos. Por favor aumente %s e %s.','Nome da tabela','motor','Particionar por','Partições','Nome da Partição','Valores','Índices modificados.','Tipo de índice','coluna (tamanho)','Nome','Base de dados eliminada.','Base de dados renomeada.','Base de dados criada.','Base de dados modificada.','Criar Base de dados','Esquema eliminado.','Esquema criado.','Esquema modificado.','Chamar',array('Consulta executada, %d registro afetado.','Consulta executada, %d registros afetados.'),'Chave externa eliminada.','Chave externa modificada.','Chave externa criada.','As colunas de origen e destino devem ser do mesmo tipo, deve existir um índice entre as colunas de destino e o registro referenciado deve existir.','Chave externa','Tabela de destino','Modificar','Adicionar coluna','Vista eliminada.','Vista modificada.','Vista criada.','Criar vista','Evento eliminado.','Evento modificado.','Evento criado.','Modificar Evento','Criar Evento','Início','Fim','Cada','Ao completar preservar','Procedimento eliminado.','Procedimento modificado.','Procedimento criado.','Modificar Função','Modificar procedimento','Criar função','Criar procedimento','Tipo de valor de regreso','Sequência eliminada.','Sequência criada.','Sequência modificada.','Modificar sequência','Criar sequências','Tipo eliminado.','Tipo criado.','Modificar tipo','Criar tipo','Trigger eliminado.','Trigger modificado.','Trigger criado.','Modificar Trigger','Adicionar Trigger','Tempo','Evento','Usuário eliminado.','Usuário modificado.','Usuário criado.','Hash','Rotina','Conceder','Impedir',array('%d processo terminado.','%d processos terminados.'),'%d no total','Parar',array('%d item afetado.','%d itens afetados.'),'Clique duas vezes sobre o valor para edita-lo.',array('%d registro importado.','%d registros importados.'),'Não é possivel selecionar a Tabela','modificar','Relações','Utilize o link modificar para alterar.','Página','último','resultado completo','Clonar','Importar','Tabelas truncadas (truncate).','As Tabelas foram movidas.','Tables have been copied.','Tabelas eliminadas.','Tables have been optimized.','Tabelas e vistas','Buscar dados nas Tabelas','Motor','Tamanho de dados','Tamanho de índice','Espaço Livre','Registros','Analizar','Otimizar','Verificar','Reparar','Truncar','Mover outra Base de dados','Mover','Copy','Sequências','Agenda','A hora determinada','agora');break;case"sl":$R=array('Ste prepri?ani?','Ne morem naložiti datoteke.','Najve?ja velikost datoteke je %sB.','Datoteka ne obstaja.','prazno','original','Ni tabel.',' ','Jezik','Uporabi','Prosim, uporabite enega od dodatkov %s.','Datoteka obstaja.','Uporabniški tipi','Števila','Datum in ?as','Nizi','Binarni','Mrežni','Geometr?ni','Seznami','Sistem','Strežnik','Uporabniško ime','Geslo','Baza','Prijavi se','Trajna prijava','Izberi podatke','Pokaži zgradbo','Spremeni pogled','Spremeni tabelo','Nov predmet','Zadnja stran','Uredi',array('%d bajt','%d bajta','%d bajti','%d bajtov'),'Izberi','Funkcije','Združitev','Iš?i','kjerkoli','Sortiraj','padajo?e','Limita','Dolžina teksta','Dejanje','Full table scan','Ukaz SQL','odpri','shrani','Spremeni bazo','Spremeni shemo','Ustvari shemo','Shema baze','Pravice','Izvozi','Odjavi se','baza','shema','Ustvari novo tabelo','izberi','ltr','Neveljaven token CSRF. Pošljite formular še enkrat.','Prijava uspešna.','Podpora za seje mora biti omogo?ena.','Seja je potekla. Prosimo, ponovno se prijavite.','Neveljavne pravice.','Brez dodatkov','Noben od podprtih dodatkov za PHP (%s) ni na voljo.','Preveliko podatkov za POST. Zmanjšajte število podatkov ali pove?ajte nastavitev za %s.','Neveljavna baza.','Baze so zavržene.','Izberi bazo','Ustvari novo bazo','Seznam procesov','Spremenljivke','Stanje','Verzija %s: %s preko dodatka za PHP %s','Prijavljen kot: %s','Zbiranje','Tabele','Zavrzi','Osveži','Shema','Neveljavna shema.','Ni vrstic.','%.3f s','Tuji klju?i','zbiranje','pri brisanju','Ime stolpca','Ime parametra','Tip','Dolžina','Možnosti','Samodejno pove?evanje','Privzete vrednosti','Komentar','Dodaj naslednjega','Premakni gor','Premakni dol','Odstrani','Pogledi','Tabela','Stolpec','Indeksi','Spremeni indekse','Izvor','Cilj','pri posodabljanju','Spremeni','Dodaj tuj klju?','Sprožilniki','Dodaj sprožilnik','Permanent link','Izvozi','Izhod rezultata','Format','Postopki','Dogodki','Podatki','Ustvari uporabnika','Napaka v poizvedbi',array('%d vrstica','%d vrstici','%d vrstice','%d vrstic'),array('Poizvedba se je uspešno izvedla, spremenjena je %d vrstica.','Poizvedba se je uspešno izvedla, spremenjeni sta %d vrstici.','Poizvedba se je uspešno izvedla, spremenjene so %d vrstice.','Poizvedba se je uspešno izvedla, spremenjenih je %d vrstic.'),'Ni ukazov za izvedbo.',array('Uspešno se je kon?ala %d poizvedba.','Uspešno sta se kon?ali %d poizvedbi.','Uspešno so se kon?ale %d poizvedbe.','Uspešno se je kon?alo %d poizvedb.'),'Naloži datoteko','Nalaganje datotek je onemogo?eno.','Izvedi','Ustavi ob napaki','Pokaži samo napake','z strežnika','Datoteka na spletnem strežniku %s','Zaženi datoteko','Zgodovina','Po?isti','Edit all','Predmet je izbrisan.','Predmet je posodobljen.','Predmet%s je vstavljen.','Vstavi','Shrani','Shrani in nadaljuj z urejanjem','Shrani in vstavi tekst','Izbriši','Tabela je zavržena.','Tabela je spremenjena.','Tabela je ustvarjena.','Ustvari tabelo','Najve?je število dovoljenih polje je preseženo. Prosimo, pove?ajte %s in %s.','Ime tabele','pogon','Porazdeli po','Porazdelitve','Ime porazdelitve','Vrednosti','Indeksi so spremenjeni.','Tip indeksa','Stolpec (dolžina)','Naziv','Baza je zavržena.','Baza je preimenovana.','Baza je ustvarjena.','Baza je spremenjena.','Ustvari bazo','Shema je zavržena.','Shema je ustvarjena.','Shema je spremenjena.','Pokli?i',array('Klican je bil postopek, spremenjena je %d vrstica.','Klican je bil postopek, spremenjeni sta %d vrstici.','Klican je bil postopek, spremenjene so %d vrstice.','Klican je bil postopek, spremenjenih je %d vrstic.'),'Tuj klju? je zavržen.','Tuj klju? je spremenjen.','Tuj klju? je ustvarjen.','Izvorni in ciljni stolpec mora imeti isti podatkovni tip. Obstajati mora indeks na ciljnih stolpcih in obstajati morajo referen?ni podatki.','Tuj klju?','Ciljna tabela','Spremeni','Dodaj stolpec','Pogled je zavržen.','Pogled je spremenjen.','Pogled je ustvarjen.','Ustvari pogled','Dogodek je zavržen.','Dogodek je spremenjen.','Dogodek je ustvarjen.','Spremeni dogodek','Ustvari dogodek','Za?etek','Konec','vsake','Po zaklju?ku ohrani','Postopek je zavržen.','Postopek je spremenjen.','Postopek je ustvarjen.','Spremeni funkcijo','Spremeni postopek','Ustvari funkcijo','Ustvari postopek','Vra?alni tip','Sekvenca je zavržena.','Sekvence je ustvarjena.','Sekvence je spremenjena.','Spremni sekvenco','Ustvari sekvenco','Tip je zavržen.','Tip je ustvarjen.','Spremeni tip','Ustvari tip','Sprožilnik je odstranjen.','Sprožilnik je spremenjen.','Sprožilnik je ustvarjen.','Spremeni sprožilnik','Ustvari sprožilnik','?as','Dogodek','Uporabnik je odstranjen.','Uporabnik je spremenjen.','Uporabnik je ustvarjen.','Zakodirano','Postopek','Dovoli','Odvzemi',array('Kon?an je %d proces.','Kon?ana sta %d procesa.','Kon?ani so %d procesi.','Kon?anih je %d procesov.'),'Skupaj %d','Kon?aj',array('Spremenjen je %d predmet.','Spremenjena sta %d predmeta.','Spremenjeni so %d predmeti.','Spremenjenih je %d predmetov.'),'Dvojni klik na vrednost za urejanje.',array('Uvožena je %d vrstica.','Uvoženi sta %d vrstici.','Uvožene so %d vrstice.','Uvoženih je %d vrstic.'),'Ne morem izbrati tabele','uredi','Relacijski','Uporabite urejanje povezave za spreminjanje te vrednosti.','Stran','Zadnja','cel razultat','Kloniraj','Uvozi','Tabele so skrajšane.','Tabele so premaknjene.','Tabele so kopirane.','Tabele so zavržene.','Tables have been optimized.','Tabele in pogledi','Iš?e podatke po tabelah','Pogon','Velikost podatkov','Velikost indeksa','Podatkov prosto ','Vrstic','Analiziraj','Optimiziraj','Preveri','Popravi','Skrajšaj','Premakni v drugo bazo','Premakni','Kopiraj','Sekvence','Urnik','v danem ?asu','zdaj');break;case"lt":$R=array('Tikrai?','Nepavyko ?kelti failo.','Maksimalus failo dydis - %sB.','Failas neegzistuoja.','tuš?ia','originalas','N?ra lenteli?.',' ','Kalba','Naudoti','Naudokite vien? iš pl?tini? %s.','Failas egzistuoja.','Vartotoj? tipai','Skai?iai','Data ir laikas','Tekstas','Dvejetainis','Tinklas','Geometrija','S?rašai','Sistema','Serveris','Vartotojas','Slaptažodis','Duomen? baz?','Prisijungti','Pastovus prisijungimas','Atrinkti duomenis','Rodyti strukt?r?','Redaguoti vaizd?','Redaguoti lentel?','Naujas ?rašas','Paskutinis puslapis','Redaguoti',array('%d baitas','%d baigai','%d bait?'),'Atrinkti','Funkcijos','Agregacija','Ieškoti','visur','Rikiuoti','maž?jimo tvarka','Limitas','Teksto ilgis','Veiksmas','Full table scan','SQL užklausa','atidaryti','išsaugoti','Redaguoti duomen? baz?','Keisti schem?','Sukurti schem?','Duomen? baz?s schema','Privilegijos','Eksportuoti','Atsijungti','duomen? baz?','schema','Sukurti nauj? lentel?','atrinkti','ltr','Neteisingas CSRF tokenas. Bandykite si?sti formos duomenis dar kart?.','J?s atsijung?te nuo sistemos.','Sesij? palaikymas turi b?ti ?jungtas.','Sesijos galiojimas baig?si. Prisijunkite iš naujo.','Neteisingi prisijungimo duomenys.','N?ra pl?tiio','N?ra nei vieno iš palaikom? PHP pl?tini? (%s).','Per daug POST duomen?. Sumažinkite duomen? kiek? arba padidinkite konfig?racijos nustatym? %s.','Neteisinga duomen? baz?.','Duomen? baz?s panaikintos.','Pasirinkti duomen? baz?','Sukurti nauj? duomen? baz?','Proces? s?rašas','Kintamieji','B?sena','%s versija: %s per PHP pl?tin? %s','Prisijung?s kaip: %s','Lyginimas','Lentel?s','Pašalinti','Atnaujinti','Schema','Neteisinga schema.','N?ra ?raš?.','%.3f s','Išoriniai raktai','palyginimas','Ištrinant','Stulpelio pavadinimas','Parametro pavadinimas','Tipas','Ilgis','Nustatymai','Auto Increment','Reikšm?s pagal nutyl?jim?','Komentaras','Prid?ti kit?','Perkelti ? virš?','Perkelti žemyn','Pašalinti','Vaizdas','Lentel?','Stulpelis','Indeksai','Redaguoti indeksus','Šaltinis','Tikslas','Atnaujinant','Redaguoti','Prid?ti išorin? rakt?','Trigeriai','Prid?ti triger?','Pastovi nuoroda','Eksportas','Išvestis','Formatas','Proced?ros','?vykiai','Duomenys','Sukurti vartotoj?','Klaida užklausoje',array('%d ?rašas','%d ?rašai','%d ?raš?'),array('Užklausa ?vykdyta. Pakeistas %d ?rašas.','Užklausa ?vykdyta. Pakeisti %d ?rašai.','Užklausa ?vykdyta. Pakeista %d ?raš?.'),'N?ra vykdom? užklaus?.',array('%d užklausa ?vykdyta.','%d užklausos ?vykdytos.','%d užklaus? ?vykdyta.'),'Failo ?k?limas','Fail? ?k?limas išjungtas.','Vykdyti','Sustabdyti esant klaidai','Rodyti tik klaidas','Iš serverio','Failas %s iš serverio','Vykdyti fail?','Istorija','Išvalyti','Redaguoti visus','?rašas ištrintas.','?rašas pakeistas.','?rašas%s sukurtas.','?rašyti','Išsaugoti','Išsaugoti ir t?sti redagavim?','Išsaugoti ir ?rašyti kit?','Trinti','Lentel? pašalinta.','Lentel? pakeista.','Lentel? sukurta.','Sukurti lentel?','Viršytas maksimalus leidžiam? stulpeli? kiekis. Padidinkite %s ir %s.','Lentel?s pavadinimas','variklis','Skirstyti pagal','Skirsniai','Skirsnio pavadinimas','Reikšm?s','Indeksai pakeisti.','Indekso tipas','Stulpelis (ilgis)','Pavadinimas','Duomen? baz? panaikinta.','Duomen? baz? pervadinta.','Duomen? baz? sukurta.','Duomen? baz? pakeista.','Sukurti duomen? baz?','Schema pašalinta.','Schema sukurta.','Schema pakeista.','Vykdyti',array('Proced?ra ?vykdyta. %d ?rašas pakeistas.','Proced?ra ?vykdyta. %d ?rašai pakeisti.','Proced?ra ?vykdyta. %d ?raš? pakeista.'),'Išorinis raktas pašalintas.','Išorinis raktas pakeistas.','Išorinis raktas sukurtas.','Šaltinio ir tikslinis stulpelis turi b?ti to paties tipo, tiksliniame stulpelyje turi b?ti naudojamas indeksas ir duomenys turi egzistuoti.','Išorinis raktas','Tikslin? lentel?','Pakeisti','Prid?ti stulpel?','Vaizdas pašalintas.','Vaizdas pakeistas.','Vaizdas sukurtas.','Sukurti vaizd?','?vykis pašalintas.','?vykis pakeistas.','?vykis sukurtas.','Redaguoti ?vyk?','Sukurti ?vyk?','Pradžia','Pabaiga','Kas','?vykdžius išsaugoti','Proced?ra pašalinta.','Proced?ra pakeista.','Proced?ra sukurta.','Keisti funkcij?','Keiskti proced?r?','Sukurti funkcij?','Sukurti proced?r?','Gr?žinimo tipas','Seka pašalinta.','Seka sukurta.','Seka pakeista.','Keisti sek?','Sukurti sek?','Tipas pašalintas.','Tipas sukurtas.','Keisti tip?','Sukurti tip?','Trigeris pašalintas.','Trigeris pakeistas.','Trigeris sukurtas.','Keisti triger?','Sukurti triger?','Laikas','?vykis','Vartotojas ištrintas.','Vartotojo duomenys pakeisti.','Vartotojas sukurtas.','Šifruotas','Proced?ra','Suteikti','Atšaukti',array('%d procesas nutrauktas.','%d procesai nutraukti.','%d proces? nutraukta.'),'%d iš viso','Nutraukti',array('Pakeistas %d ?rašas.','Pakeisti %d ?rašai.','Pakeistas %d ?raš?.'),'Du kartus spragtel?kite pelyte nor?dami redaguoti.',array('%d ?rašas ?kelta.','%d ?rašai ?kelti.','%d ?raš? ?kelta.'),'Ne?manoma atrinkti lentel?s','redaguoti','Ryšiai','Nor?dami redaguoti reikšm? naudokite redagavimo nuorod?.','Puslapis','paskutinis','visas rezultatas','Klonuoti','Importas','Lentel?s buvo ištuštintos.','Lentel?s perkeltos.','Lentel?s nukopijuotos.','Lentel?s pašalintos.','Tables have been optimized.','Lentel?s ir vaizdai','Ieškoti duomen? lentel?se','Variklis','Duomen? ilgis','Indekso ilgis','Laisvos vietos','?rašai','Analizuoti','Optimizuoti','Patikrinti','Pataisyti','Tuštinti','Perkelti ? kit? duomen? baz?','Perkelti','Kopijuoti','Sekos','Grafikas','Nurodytu laiku','dabar');break;case"tr":$R=array('Emin misin?','Dosya gönderilemiyor.','Bir dosya için izin verilen dosya s?n?r? %sB.','Dosya mevcut de?il.','bo?','orijinal','Tablo yok.',' ','Dil','Kullan','%s uzant?lar?ndan birini kullan?n.','Dosya mevcut.','Kullan?c? türleri','Say?lar','Tarih ve zaman','Sözcükler','?kili','A?','Geometri','Listeler','Sistem','Sunucu','Kullan?c?','Parola','Veritaban?','Giri?','Kal?c? giri?','Veri seç','Yap?y? göster','De?i?im görünüm','Tablo de?i?tir','Yeni ö?e','Son sayfa','Düzen',array('%d bayt','%d kadar bayt'),'Seç','Fonksiyonlar','Kümeleme','Arama','herhangi bir yer','S?rala','azalan','s?n?r','Yaz? uzunlu?u','Eylem','Full table scan','SQL komutu','aç','kaydet','Veritaban? de?i?tir','De?i?im ?emas?','Yarat?m ?emas?','Veritaban? ?emas?','?zinler','Döküm','Ç?k??','veritaban?','?ema','Yeni tablo yarat','seç','ltr','Geçersiz Cross-site request forgery (CSRF) jetonu. Forumu tekrar yolla.','Ba?ar?yla ç?k?ld?.','Oturum deste?i etkin olmal?d?r.','Oturum süresi doldu, lütfen tekrar giri? yap?n.','Geçersiz kimlik.','Uzant? yok','Desteklenen PHP uzant?lar?ndan (%s) hiçbiri mevcut de?il.','Çok büyük POST verisi, veriyi azalt?n ya da ayar yönergesini uygun olarak yap?land?r?n.','Geçersiz veritaban?.','Veritabanlar? dü?üüldü.','Veritaban? seç','Yeni veritaban? yarat','??lem listesi','De?i?kenler','Durum','%s sürüm: %s PHP uzant?s? ile %s','%s olarak giri? yap?ld?.','Kar??la?t?rma','Tablolar','Dü?ür','Tazele','?ema','Geçersiz ?ema.','S?ra yok.','%.3f s','D?? anahtarlar','kar??la?t?rma','Silinmek üzere','Kolon ad?','Parametre ad?','Tür','Uzunluk','Seçenekler','Otomatik yükselt','Varsay?lan de?erler','Yorum','Sonraya ekle','Yukar? ta??','A?a?? ta?','Kald?r','Görünüm','Tablo','Kolon','Dizinler','Dizinleri de?i?tir','Kaynak','Hedef','Yükseltilmek üzere','De?i?tir','D?? anahtar ekle','Tetikler','Tetik ekle','Permanent link','?hraç','Ç?kt?','Biçim','Yordamlar','Olaylar','Veri','Kullan?c? yarat','Sorguda hata',array('%d s?ra)','%d kadar s?ra'),array('Sorgu i?letilmesi tamamland?. %d s?ra(row) etkilendi.','Sorgu i?letilmesi tamamland?. Bundan %d kadar s?ra etkilendi.'),'??letilmek için komut yok.',array('%d sorgunun i?letilmesi tamamland?.','%d kadar sorgunun i?letilmesi tamamland?.'),'Dosya gönder','Dosya gönderimi etkin de?il.','??let','Dur hata','Sadece hatalar? göster.','Sunucudan','%s web sunucusu dosyas?','Dosya çal??t?r','Tarih','Bo?luk','Edit all','Ö?e silindi.','Ö?e güncellendi.','Ö?eler eklendi.','Ekle','Kaydet','Kaydet ve düzenlemeye devam et','Kaydet ve sonrakin ekle','Sil','Tablo dü?ürüldü.','Tablo de?i?tirildi.','Tablo yarat?ld?.','Tablo yarat','kabul edilebilir alan say?s? a??ld?. Lütfen %s ve %s dü?ürün.','Tablo ad?','motor','Bölümü taraf?ndan','Bölümler','BÖlüm ad?','De?erler','Dizinler de?i?tirilidi.','Dizin Türü','Kolon (uzunlu?u)','Ad','Veritaban? dü?ürüldü.','Veritaban?n?n ismi de?i?tirildi.','Veritaban? yarat?ld?.','Veritaban? de?i?tirildi.','Veritaban? yarat','?ema dü?ürüldü.','?ema yarat?ld?.','?ema de?i?tirildi.','Ça?r?',array('Yordam ça?r?ld?, %d s?ra(row) etkilendi.','Yordam ça?r?ld?, %d s?ralar(rows) etkilendi.'),'D?? anahtar dü?ürüldü.','D?? anahtar de?i?tir.','D?? anahtar yarat.','Kaynak ve hedef kolonlar ayn? veri türü olmak zorunda, hedef kolonda bir dizin ve ba?vurulan veri bulunmal?.','D?? anahtar','Hedef tablo','De?i?','Kolon eklde','Görünüm dü?ürüldü.','Görünüm de?i?tirildi.','Görünüm yarat?ld?.','Görünüm yarat','Olay dü?üdüldü.','Olay de?i?tirildi.','Olay yarat?ld?.','De?i?tirme olay?','Yaratma olay?','Ba?la','Son','Herzaman','Tamamlama korumas? AÇIK','Yordam dü?ürüldü.','Yordam de?i?tirildi.','Yordam yarat?ld?.','De?i?tirme fonksyionu','De?i?tirme yöntemi','Fonksiyon yarat','Yöntem yarat','Geri dönü? türü','Dizi dü?ürüldü.','Dizi yarat?ld?.','Dizi de?i?tirildi.','Dizi de?i?tir','Dizi yarat','Tür dü?ürüldü.','Tür yarat?ld?.','Tür de?i?tir','Tür yarat','Tetik dü?ürüldü.','Tetik de?i?tirildi.','Tetik yarat?ld?.','Tetik de?i?tir.','Tetik yarat','Zaman','Olay','Kullan?c? dü?ürüldü.','Kullan?c? de?i?tirildi.','Kullan?c? yarat?ld?.','Harmanland?.','Yordam','?mtiyaz','Geri al',array('%d süreç öldürüldü.','%d adet süreç öldürüldü.'),'%d toplamda','Öldür',array('%d ö?e etkilendi.','%d kadar ö?e etkilendi.'),'De?erin üzerine çift t?klay?n ve de?i?tirin.',array('%d s?ra ithal edildi.','%d kadar s?ra ithal edildi.'),'Tablo seçilemedi','düzen','?li?kiler','De?eri de?i?tirmek için düzenleme ba?lant?s?n? kullan?n.','Sayfa','son','tüm sonuç','Klonla','?thal','Tablolar budand?.','Tablolar ta??nd?.','Tablolar kopyaland?.','Tablolar dü?ürüldü.','Tables have been optimized.','Tablolar ve görünümler','Tablolarda veri ara.','Motor','Veri uzunlu?u','Dizin uzunlu?u','Serbest veri','S?ralar (Rows)','Çözümleme','En uygun hale getirme','Denetleme','Tamir','Buda','Di?er veritaban?na ta??','Ta??','Kopyala','Diziler','Takvimli','Bir anda','?imdi');break;case"ro":$R=array('E?ti precis?','Nu am putut înc?rca fi?ierul pe server.','Fi?ierul maxim admis - %sO.','A?a fi?ier nu exist?.','gol','original','În baza de date nu sunt tabele.',',','Limba','Alege','Folosi?i una din urm?toarele extensii %s.','Fi?ierul deja exist?.','Tipuri de utilizatori','Num?r','Data ?i timpul','?ire de caractere','Tip binar','Re?ea','Geometrie','Liste','Sistema','Server','Nume de utilizator','Parola','Baza de date','Intr?','Logare permanent?','Selecteaz?','Arat? structura','Modific? reprezentare','Modific? tabelul','Înscriere nou?','Ultima pagin?','Editeaz?',array('%d octet','%d octe?i'),'Selecteaz?','Func?ii','Agregare','C?utare','oriunde','Sortare','descresc?tor','Limit','Lungimea textului','Ac?iune','Full table scan','SQL query','deschide','salveaz?','Modific? baza de date','Modific? schema','Creaz? o schem?','Schema bazei de date','Privelegii','Dump','E?ire','baza de date','schema','Creaz? tabel nou','selecteaz?','ltr','CSRF token imposibil. Retrimite forma.','A?i e?it cu succes.','Sesiunile trebuie s? fie pornite.','Timpul sesiunii a expirat, rog s? te loghezi din nou.','Numele de utilizator sau parola este gre?it?.','Nu este extensie','Nu este aviabil? nici o extensie suportat? (%s).','Mesajul POST este prea mare. Trimite?i mai pu?ine date sau m?ri?i parametrul configura?iei directivei %s.','Baz? de deate invalid?.','Baze de date au fost ?terse.','Alege baza de date','Creaz? o baz? de date nou?','Lista proceselor','Variabile','Stare','Versiunea %s: %s cu extensia PHP %s','A?i intrat ca: %s','Cola?ionare','Tabele','?terge','Împrosp?teaz?','Schema','Schem? incorect?.','Nu sunt înscrieri.','%.3f s','Cheiuri externe','cola?ionarea','La ?tergere','Denumirea coloanei','Numele parametrului','Tip','Lungime','Ac?iune','Cre?terea automat?','Valoarea ini?ial?','Comentariu','Adaug? înc?','Mi?c? în sus','Mi?c? în jos','?terge','Reprezentare','Tabel','Coloan?','Indexe','Modific? indexe','Surs?','Scop','La modificare','Modific?','Adaug? chei extern','Triggere','Adaug? trigger','Adres? permanent?','Export','Date de e?ire','Format','Proceduri ?i func?ii salvate','Evenimente','Date','Creaz? utilizator','Eroare în query',array('%d înscriere','%d înscrieri'),array('Query executat, %d înscriere modificat?.','Query executat, %d înscrieri modificate.'),'Nu sunt comenzi de executat.',array('%d query executat.','%d query-uri executate cu succes.'),'Încarc? fi?ierul','Înc?rcarea fi?ierelor este interzis?.','Execut?','Opre?tete la eroare','Arat? doar gre?eli','De pe server','Fi?ierul %s pe server','Execut? fi?ier','Istoria','Cur??p','Editeaz? tot','Înregistrare a fost ?tears?.','Înregistrare a fost înnoit?.','Înregistrarea%s a fost inserat?.','Insereaz?','Salveaz?','Salveaz? ?i continu? editarea','Salveaz? ?i mai insereaz?','?terge','Tabelul a fost ?ters.','Tabelul a fost modificat.','Tabelul a fost creat.','Creaz? tabel','Num?rul maxim de înscrieri disponibile a fost atins. Majora?i %s ?i %s.','Denumirea tabelului','tip','Împarte','Sec?iuni','Denumirea sec?iunii','Parametru','Indexele au fost modificate.','Tipul indexului','Coloan? (lungimea)','Titlu','Baza de date a fost ?tears?.','Baza de date a fost redenumit?.','Baza de date a fost creat?.','Baza de date a fost modificat?.','Creaz? baza de date','Schema a fost ?tears?.','Schema a fost creat?.','Schema a fost modificat?.','Apeleaz?',array('A fost executat? procedur?, %d înscriere a fost modificat?.','A fost executat? procedur?, %d înscrieri au fost modificate.'),'Chei extern a fost ?ters.','Chei extern a fost modificat.','Chei extern a fost creat.','Coloanele ar trebui s? aib? acelea?i tipuri de date, trebuie s? existe date de referin?? ?i un index pe coloanela-?int?.','Chei extern','Tabela scop','Modific?','Adaug? coloan?','Reprezentarea a fost ?tears?.','Reprezentarea a fost modificat?.','Reprezentarea a fost creat?.','Creaz? reprezentare','Evenimentul a fost ?ters.','Evenimentul a fost modificat.','Evenimentul a fost ad?ugat.','Modific? eveniment','Creeaz? evenimet','Început','Svâr?it','Fiecare','Salveaz? dup? finisare','Procedura a fost ?tears?.','Procedura a fost modificat?.','Procedura a fost creat?.','Modific? func?ia','Modific? procedura','Creaz? func?ie','Creaz? procedur?','Tipul return?rii','«secven?a» a fost ?tears?.','«secven?a» a fost creat?.','«secven?a» a fost modificat?.','Modific? «secven??»','Creaz? «secven??»','Tiipul a fost ?ters.','Creaz? tip nou.','Modific? tip','Creaz? tip noi','Triggerul a fost ?ters.','Triggerul a fost modificat.','Triggerul a fost creat.','Modific? trigger','Creaz? trigger','Timp','Eveniment','Utilizatorul a fost ?ters.','Utilizatorul a fost modificat.','Utilizatorul a fost creat.','Hashed','Procedur?','Permite','Interzice',array('A fost finisat %d proces.','Au fost finisate %d procese.'),'În total %d','Termin?',array('A fost modificat? %d înscriere.','Au fost modificate %d înscrieri.'),'Dublu click pe o valoare pentru a o modifica.',array('%d rînd importat.','%d rînduri importate.'),'Nu am putut selecta date din tabel','editare','Rela?ii','Valoare poate fi modificat? cu ajutorul butonului «modific?».','Pagina','ultima','tot rezultatul','Cloneaz?','Import?','Tabelele au fost cur??ate.','Tabelele au fost mutate.','Tabelele au fost copiate','Tabelele au fost ?terse.','Tables have been optimized.','Tabele ?i reprezent?ri','Caut? în tabele','Tip','Cantitatea de date','Cantitatea de indexe','Spa?iu liber','Înscrieri','Analizeaz?','Optimizeaz?','Controleaz?','Repar?','Cur???','Mut? în alt? baz? de date','Mut?','Copiaz?','«Secven?e»','Program','În timpul curent','HH:MM:SS');break;case"id":$R=array('Anda yakin','Tidak dapat mengunggah berkas.','Besar berkas yang diizinkan adalah %s bita.','Berkas tidak ditemukan.','kosong','orisinal','Tiada tabel.','.','Bahasa','Gunakan','Harap gunakan salah satu ekstensi %s.','Berkas sudah ada.','Jenis pengguna','Angka','Tanggal dan waktu','String','Biner','Jaringan','Geometri','Daftar','Sistem','Server','Pengguna','Sandi','Basis data','Masuk','Masuk permanen','Pilih data','Lihat struktur','Ubah tampilan','Ubah tabel','Entri baru','Halaman terakhir','Edit','%d bita','Pilih','Fungsi','Agregasi','Cari','di mana pun','Urutan','menurun','Limit','Panjang teks','Tindakan','Pindai tabel lengkap','Perintah SQL','buka','simpan','Ubah basis data','Ubah skema','Buat skema','Skema basis data','Privilese','Ekspor','Keluar','basis data','skema','Buat tabel baru','pilih','ltr','Token CSRF invalid. Kirim ulang formulir.','Berhasil keluar.','Dukungan sesi harus aktif.','Sesi habis, silakan masuk lagi.','Akses invalid.','Ekstensi tidak tersedia','Ekstensi PHP yang didukung (%s) tidak tersedia.','Data POST terlalu besar. Kurangi data atau perbesar pengarah konfigurasi %s.','Basis data invalid.','Basis data berhasil dihapus.','Pilih basis data','Buat basis data baru','Daftar proses','Variabel','Status','Versi %s: %s dengan ekstensi PHP %s','Masuk sebagai: %s','Kolasi','Tabel','Hapus','Segarkan','Skema','Skema invalid.','Tiada baris.','%.3f s','Kunci asing','kolasi','ON DELETE','Nama kolom','Nama paramater','Jenis','Panjang','Opsi','Kenaikan Otomatis','Nilai bawaan','Komentar','Tambah setelahnya','Naik','Turun','Hapus','Tampilan','Tabel','Kolom','Indeks','Ubah indeks','Sumber','Sasaran','ON UPDATE','Ubah','Tambah kunci asing','Picu','Tambah picu','Tautan permanen','Ekspor','Hasil','Format','Rutin','Peristiwa','Data','Buat pengguna','Kesalahan dalam kueri','%d baris','Kueri berhasil, %d baris terpengaruh.','Tiada perintah untuk dijalankan.','%d kueri berhasil dijalankan.','Unggah berkas','Pengunggahan berkas dimatikan.','Jalankan','Hentikan pada kesalahan','Hanya tampilkan kesalahan','Dari server','Berkas server web %s','Jalankan berkas','Riwayat','Bersihkan','Edit semua','Entri berhasil dihapus.','Entri berhasil diperbarui.','Entri%s berhasil disisipkan.','Sisipkan','Simpan','Simpan dan terus mengedit','Simpan dan sisipkan yang lain','Hapus','Tabel berhasil dihapus.','Tabel berhasil diubah.','Tabel berhasil dibuat.','Buat tabel','Jumlah ruas maksimum yang diizinkan dilewati. Harap naikkan %s dan %s.','Nama tabel','mesin','Partisi menurut','Partisi','Nama partisi','Nilai','Indeks berhasil diubah.','Jenis Indeks','Kolom (panjang)','Nama','Basis data berhasil dihapus.','Basis data berhasil diganti nama.','Basis data berhasil dibuat.','Basis data berhasil diubah.','Buat basis data','Skema berhasil dihapus.','Skema berhasil dibuat.','Skema berhasil diubah.','Panggilan',array('Rutin telah dipanggil, %d baris terpengaruh.','Rutin telah dipanggil, %d baris terpengaruh'),'Kunci asing berhasil dihapus.','Kunci asing berhasil diubah.','Kunci asing berhasil dibuat.','Kolom sumber dan sasaran harus memiliki jenis data yang sama. Kolom sasaran harus memiliki indeks dan data rujukan harus ada.','Kunci asing','Tabel sasaran','Ubah','Tambah kolom','Tampilan berhasil dihapus.','Tampilan berhasil diubah.','Tampilan berhasil dibuat.','Buat tampilan','Peristiwa berhasil dihapus.','Peristiwa berhasil diubah.','Peristiwa berhasil dibuat.','Ubah peristiwa','Buat peristiwa','Mulai','Selesai','Setiap','Pertahankan saat selesai','Rutin berhasil dihapus.','Rutin berhasil diubah.','Rutin berhasil dibuat.','Ubah fungsi','Ubah prosedur','Buat fungsi','Buat prosedur','Jenis balikan','Deret berhasil dihapus.','Deret berhasil dibuat.','Deret berhasil diubah.','Ubah deret','Buat deret','Jenis berhasil dihapus.','Jenis berhasil dibuat.','Ubah jenis','Buat jenis','Picu berhasil dihapus.','Picu berhasil diubah.','Picu berhasil dibuat.','Ubah picu','Buat picu','Waktu','Peristiwa','Pengguna berhasil dihapus.','Pengguna berhasil diubah.','Pengguna berhasil dibuat.','Hashed*','Rutin','Beri','Tarik','%d proses berhasil dihentikan.','%d total','Hentikan','%d entri terpengaruh.','Klik ganda suatu nilai untuk mengubahnya.','%d baris berhasil diimpor.','Gagal memilih tabel','edit','Relasi','Gunakan tautan edit untuk mengubah nilai ini.','Halaman','terakhir','Seluruh hasil','Gandakan','Impor','Tabel berhasil dikosongkan.','Tabel berhasil dipindahkan.','Tabel berhasil disalin.','Tabel berhasil dihapus.','Tabel berhasil dioptimalkan.','Tabel dan tampilan','Cari data dalam tabel','Mesin','Panjang Data','Panjang Indeks','Data Bebas','Baris','Analisis','Optimalkan','Periksa','Perbaiki','Kosongkan','Pindahkan ke basis data lain','Pindahkan','Salin','Deret','Jadwal','Pada waktu tertentu','no');break;case"ru":$R=array('?? ????????','?? ??????? ????????? ???? ?? ??????.','???????????? ??????????? ?????? ????? - %sB.','?????? ????? ?? ??????????.','?????','????????','? ???? ?????? ??? ??????.',' ','????','???????','??????????? ???? ?? ???? ?????????? %s.','???? ??? ??????????.','???? ?????????????','?????','???? ? ?????','??????','???????? ???','????','?????????','??????','??????','??????','??? ????????????','??????','???? ??????','?????','?????????? ? ???????','???????','???????? ?????????','???????? ?????????????','???????? ???????','????? ??????','????????? ????????','?????????????',array('%d ????','%d ?????','%d ??????'),'???????','???????','?????????','?????','? ????? ?????','???????????','?? ????????','?????','????? ??????','????????','Full table scan','SQL ??????','???????','?????????','???????? ???? ??????','???????? ?????','????? ?????','????? ???? ??????','??????????','????','?????','???? ??????','?????','??????? ????? ???????','???????','ltr','???????????????? CSRF ?????. ????????? ????? ??? ???.','?? ??????? ???????? ???????.','?????? ?????? ???? ????????.','???? ???????? ????? ?????, ????? ????? ????? ? ???????.','???????????? ??? ???????????? ??? ??????.','??? ??????????','?? ???????? ?? ?????? ?????????? ?? ?????????????? (%s).','??????? ??????? ????? POST-??????. ??????? ??????? ????? ?????? ??? ????????? ???????? ???????????????? ????????? %s.','?????? ???? ??????.','???? ?????? ???????.','??????? ???? ??????','??????? ????? ???? ??????','?????? ?????????','??????????','?????????','?????? %s: %s ? PHP-??????????? %s','?? ????? ???: %s','????? ?????????????','???????','???????','????????','?????','???????????? ?????.','??? ???????.','%.3f s','??????? ?????','????? ?????????????','??? ????????','???????? ????','???????? ?????????','???','?????','????????','?????????????? ??????????','???????? ?? ?????????','???????????','???????? ???','??????????? ?????','??????????? ????','???????','?????????????','???????','???????','???????','???????? ???????','????????','????','??? ??????????','????????','???????? ??????? ????','????????','???????? ???????','?????????? ??????','???????','???????? ??????','??????','???????? ????????? ? ???????','???????','??????','??????? ????????????','?????? ? ??????e',array('%d ??????','%d ??????','%d ?????'),array('?????? ????????, ???????? %d ??????.','?????? ????????, ???????? %d ??????.','?????? ????????, ???????? %d ???????.'),'??? ?????? ??? ??????????.',array('%d ?????? ???????? ???????.','%d ??????? ????????? ???????.','%d ???????? ????????? ???????.'),'????????? ???? ?? ??????','???????? ?????? ?? ?????? ?????????.','?????????','?????????? ??? ??????','?????? ??????','? ???????','???? %s ?? ??????????','????????? ????','???????','????????','????????????? ???','?????? ???????.','?????? ?????????.','??????%s ???? ?????????.','????????','?????????','????????? ? ?????????? ??????????????','????????? ? ???????? ???','???????','??????? ???? ???????.','??????? ???? ????????.','??????? ???? ???????.','??????? ???????','?????????? ???????????? ???????? ?????????? ????????? ?????. ????????? %s ? %s.','???????? ???????','???','????????? ??','???????','???????? ???????','?????????','??????? ????????.','??? ???????','??????? (?????)','????????','???? ?????? ???? ???????.','???? ?????? ???? ?????????????.','???? ?????? ???? ???????.','???? ?????? ???? ????????.','??????? ???? ??????','????? ???????.','??????? ????? ?????.','????? ????????.','???????',array('???? ??????? ?????????, %d ?????? ???? ????????.','???? ??????? ?????????, %d ?????? ???? ????????.','???? ??????? ?????????, %d ??????? ???? ????????.'),'??????? ???? ??? ??????.','??????? ???? ??? ???????.','??????? ???? ??? ??????.','??????? ?????? ????? ?????????? ???? ??????, ? ?????????????? ??????? ?????? ???? ??????, ?????? ??? ??????? ?????? ????????????.','??????? ????','?????????????? ???????','????????','???????? ???????','????????????? ???? ???????.','????????????? ???? ????????.','????????????? ???? ???????.','??????? ?????????????','??????? ???? ???????.','??????? ???? ????????.','??????? ???? ???????.','???????? ???????','??????? ???????','??????','?????','??????','????? ?????????? ?????????','????????? ???? ???????.','????????? ???? ????????.','????????? ???? ???????.','???????? ???????','???????? ?????????','??????? ???????','??????? ?????????','???????????? ???','«??????????????????» ???????.','??????? ????? «??????????????????».','«??????????????????» ????????.','???????? «??????????????????»','??????? «??????????????????»','??? ??????.','?????? ????? ???.','???????? ???','??????? ???','??????? ??? ??????.','??????? ??? ???????.','??????? ??? ??????.','???????? ???????','??????? ???????','?????','???????','???????????? ??? ??????.','???????????? ??? ???????.','???????????? ??? ??????.','??????????','?????????','?????????','?????????',array('??? ???????? %d ???????.','???? ????????? %d ????????.','???? ????????? %d ?????????.'),'????? %d','?????????',array('???? ???????? %d ??????.','???? ???????? %d ??????.','???? ???????? %d ???????.'),'?????? ??? ???? ?? ????????, ????? ??? ????????.',array('????????????? %d ??????.','????????????? %d ??????.','????????????? %d ?????.'),'?? ??????? ???????? ?????? ?? ???????','?????????????','???????','???????? ??? ???????? ????? ? ??????? ?????? «????????».','????????','?????????','???? ?????????','???????????','??????','??????? ???? ???????.','??????? ???? ??????????.','??????? ???????????.','??????? ???? ???????.','Tables have been optimized.','??????? ? ?????????????','????? ? ????????','???','????? ??????','????? ????????','????????? ?????','?????','?????????????','??????????????','?????????','?????????','????????','??????????? ? ?????? ???? ??????','???????????','??????????','«??????????????????»','??????????','? ?????? ?????','??:??:??');break;case"uk":$R=array('?? ?????????','????????? ??????????? ????.','??????????? ?????????? ?????? ????? %s?.','???? ?? ?????.','????????','??????????','???? ???????.',' ','????','??????','???? ?????, ?????????????? ???? ? ????????? %s.','???? ?????.','???? ????????????','?????','???? ? ???','?????','????????','??????','?????????','??????','??????? ???? ?????','??????','??????????','??????','???? ?????','??????','???\'????? ?????','??????? ????','???????? ?????????','??????? ??????','??????? ???????','????? ?????','??????? ????????','??????????',array('%d ????','%d ?????','%d ??????'),'???????','???????','?????????','?????','????-??','?????????','?? ????????','?????????','??????? ??????','???','Full table scan','SQL ?????','????????','????????','??????? ???? ?????','??????? ?????','???????? ?????','????? ???? ?????','????????','????','?????','???? ?????','?????','???????? ???? ???????','???????','ltr','????????? CSRF ?????. ????????? ????? ?? ???.','?? ????? ?????? ? ???????.','????? ??????? ???? ?????????.','????? ???????????, ???? ?????, ???????? ? ??????? ?????.','??????????? ???? ?????.','???? ?????????','????? ? PHP-????????? (%s), ?? ?????????????, ?? ????????.','??????? ??????? ??\'?? POST-?????. ???????? ??\'?? ??? ????????? ???????? ????????? %s ????????????.','?????? ???? ?????.','???? ????? ???? ????????.','?????? ???? ?????','???????? ???? ???? ?????','??????? ????????','??????','??????','?????? %s: %s ? PHP-??????????? %s','?? ??????? ??: %s','?????????????','???????','????????','???????','?????','??????? ?????.','???? ??????.','%.3f s','???????? ?????','?????????????','??? ?????????','????? ???????','????? ?????????','???','???????','?????','??????????? ??????????','???????? ?? ?????????????','?????????','?????? ??','?????????? ?????','?????????? ????','????????','??????','???????','???????','???????','??????? ????????????','???????','????','??? ?????','???????','?????? ????????? ????','???????','?????? ??????','???????? ?????????','???????','??????? ????','??????','????????? ?????????','?????','????','???????? ???????????','??????? ? ??????',array('%d ?????','%d ?????','%d ??????'),array('????? ???????? ???????, ??????? %d ?????.','????? ???????? ???????, ??????? %d ?????.','????? ???????? ???????, ??????? %d ??????.'),'???? ??????? ?? ?????????.',array('%d ????? ???????? ???????.','%d ?????? ???????? ???????.','%d ??????? ???????? ???????.'),'??????????? ????','???????????? ?????? ??????????.','????????','?????????? ??? ???????','?????????? ?????? ???????','? ???????','???? %s ?? ??????????','????????? ????','???????','????????','?????????? ???','????? ???? ????????.','????? ???? ???????.','?????%s ???? ?????????.','????????','????????','???????? ? ?????????? ???????????','???????? ? ???????? ?????','????????','??????? ???? ????????.','??????? ???? ???????.','??????? ???? ????????.','???????? ???????','????????? ??????????? ????????? ????????? ?????. ???? ?????, ????????? %s ? %s.','????? ???????','?????','????????? ??','???????','????? ???????','????????','???????????? ???? ???????.','??? ???????','???????? (???????)','?????','???? ????? ???? ????????.','???? ????? ???? ?????????????.','???? ????? ???? ????????.','???? ????? ???? ???????.','???????? ???? ?????','????? ???? ????????.','????? ???? ????????.','????? ???? ???????.','?????????',array('???? ????????? ?????????, %d ????? ???? ???????.','???? ????????? ?????????, %d ?????? ???? ???????.','???? ????????? ?????????, %d ??????? ???? ???????.'),'????????? ???? ???? ????????.','????????? ???? ???? ???????.','????????? ???? ???? ????????.','??????? ??????? ???? ??? ????? ??? ?????, ??????? ??????? ??????? ???? ?????????????? ? ????, ?? ??? ??????????? ??????? ????????.','????????? ????','??????? ???????','???????','?????? ????????','?????? ???? ????????.','?????? ???? ???????.','?????? ???? ????????.','???????? ??????','????? ???? ????????.','????? ???? ???????.','????? ???? ????????.','??????? ?????','???????? ?????','???????','??????','???????','????? ?????????? ????????','????????? ???? ????????.','????????? ???? ???????.','????????? ???? ????????.','??????? ???????','??????? ?????????','???????? ???????','???????? ?????????','???, ?? ???????????','????????????? ???? ????????.','????????????? ???? ????????.','????????????? ???? ???????.','??????? ?????????????','???????? ?????????????','??? ???? ????????.','??? ???? ????????.','??????? ???','???????? ???','?????? ???? ????????.','?????? ???? ???????.','?????? ???? ????????.','??????? ??????','???????? ??????','???','?????','??????????? ???? ????????.','??????????? ???? ???????.','??????????? ???? ????????.','????????','?????????','?????????','??????????',array('???? ????????? %d ??????.','???? ????????? %d ???????.','???? ????????? %d ????????.'),'%d ??????','????????? ??????',array('???? ??????? %d ?????.','???? ??????? %d ??????.','???? ??????? %d ???????.'),'????? ???????? ?? ???????? ??? ??????? ????.',array('%d ????? ???? ???????????.','%d ????? ???? ???????????.','%d ?????? ???? ???????????.'),'????????? ??????? ???????','??????????','??\'????','?????????????? ????????? ??? ??????? ?? ????????.','????????','???????','???? ?????????','?????????','???????????','??????? ???? ???????.','??????? ???? ??????????.','??????? ???? ???????????.','??????? ???? ????????.','??????? ???? ????????????.','??????? ? ???????','?????? ???? ? ????????','?????','??\'?? ?????','??\'?? ????????','?????? ?????','??????','???????????','????????????','??????????','?????????','????????','????????? ?? ????? ???? ?????','?????????','?????????','?????????????','???????','? ????? ???','??');break;case"zh":$R=array('?????','???????','?????????? %sB','??????','?','??','????',',','??','??','????????????%s?','??????','????','??','????','???','???','??','????','??','??','???','???','??','???','??','????','????','????','????','???','???','??','??','%d ??','??','??','??','??','????','??','??','??','????','??','Full table scan','SQL??','??','??','?????','????','????','?????','??','??','??','???','??','????','??','ltr','?? CSRF ??????????','?????','????????','????????????','?????','????','????? PHP ?????%s??','??? POST ??????????? %s ?????','??????','???????','?????','??????','????','??','??','%s ???%s ?? PHP ?? %s','????%s','??','?','??','??','??','?????','????','%.3f ?','??','??','ON DELETE','??','???','??','??','??','????','???','??','?????','??','??','??','??','?','?','??','????','?','??','ON UPDATE','??','????','???','?????','????','??','??','??','???','??','??','????','????','%d ?','????OK?%d ?????','???????','%d ?????????','????','????????','??','?????','?????','?????','Web????? %s','????','??','??','????','??????','??????','?????%s?','??','??','???????','????????','??','?????','?????','?????','???','??????????????? %s ? %s ?','??','??','????','??','???','?','??????','????','?????','??','???????','????????','???????','???????','?????','??????','??????','??????','??','???????%d ?????','??????','??????','??????','??????????????????????????????????????????','??','???','??','???','??????','??????','??????','????','??????','??????','??????','????','????','??','??','?','?????','???????','???????','???????','????','????','????','????','????','??????','??????','??????','????','????','??????','??????','????','????','???????','???????','???????','?????','?????','??','??','??????','??????','??????','Hashed','???','??','??','%d ??????','?? %d','??','%d ????????','??????????','%d ?????','??????','??','????','????????????','??','??','????','??','??','?????','?????','?????','?????','Tables have been optimized.','????','???????','??','????','????','????','??','??','??','??','??','??','????????','??','??','??','??','?????','HH:MM:SS');break;case"zh-tw":$R=array('?????','???????','??????????%sB','?????','??','??','??????',',','??','??','????????? extension %s?','??????','?????','??','????','???','???','??','??','??','?????','???','??','??','???','??','????','????','????','?????','?????','???','????','??','%d byte(s)','??','??','??','??','????','??','??','??','Text ??','??','Full table scan','SQL??','??','??','?????','???????','???????','?????','??','??/??','??','???','?????','??????','??','ltr','??? CSRF token?????????','?????','Session ??????','Session ??????????','??????','?? ????','???????PHP?????%s??','POST ????????????? %s ?????','???????','???????','?????','??????','????','??','??','%s???%s ??PHP???? %s','????%s','??','???','??','????','?????','?????????','????','%.3f?','??','??','ON DELETE','??','????','??','??','??','????','???','??','?????','??','??','??','???','???','?','??','????','??','??','ON UPDATE','??','????','???','?????','????','??','??','??','??','??','??','?????','????','%d?','????OK?%d????','????????','????? %d ????','????','????????','??','?????','???????','????','??????? %s','????','??','??','????','???????','??????','?????%s?','??','??','???????','????????','??','????????','???????','???????','??????','???????????????%s?%s ?','?????','??','????','??','???','?','??????','????','?????','??','???????','?????????','???????','???????','?????','?????????','?????????','?????????','??','???????%d????','??????','??????','??????','??????????????????????????????????????????','??','?????','??','?????','???????','???????','???????','?????','??????','??????','??????','????','????','??','??','?','??????','??????','???????','???????','????','????','????','??????','????','??? sequence?','??? sequence?','??? sequence?','?? sequence','?? sequence','??????','??????','????','????','???????','???????','???????','?????','?????','??','??','???????','???????','???????','Hashed','??','??','??','%d ? Process(es) ???','?? %d ?','??','%d????????','????????','%d?????','????????','??','??','??????????','?','????','????','??','??','???????','???????','??????','?????','Tables have been optimized.','???????','??????','??','????','????','????','??','??','??','??','??','??','????????','??','??','Sequences','??','?????','HH:MM:SS');break;case"ja":$R=array('???????','????????????????','????????? %sB','???????????','?','?','???????????',',','??','??','????????????????? %s','????????????','???????','??','??','???','????','???????','??????','???','????????','???','????','?????','??????','????','????????','???','??','??????','???????','?????','??????','??','%d ???','??','??','??','??','??','???','??','??','??????','??','Full table scan','SQL????','??','??','?????????','??????','??????','??','??','???','?????','??????','????','???????','??','ltr','???CSRF??????????????','?????','???????????????','???????????????????????','???????','??????????','PHP??????%s???????????????','POST???????????????????????? %s ????????????','?????????','?????????????','???????????????','????????????','??????','??','??','%s??????%s? PHP???? %s','???%s','????','????','??','??????','????','???????','???????','%.3f ?','????','????','ON DELETE','??','???','?','??','??','??','???','????','??','?','?','??','???','????','?','??','?????','???','?????','ON UPDATE','??','???????','????','???????','?????????','??????','??','??','????','????','???','??????','????????','%d ?','????????????%d ????????','??????????????','%d ???????????','???????????','????????????????','??','?????????','???????','????????','Web??????? %s','???????','??','??','?????','?????????','?????????','%s?????????','??','??','??????','?????','??','???????????','???????????','???????????','???????','????????????????????%s ? %s ??????????','?????','????','???????','???????','????????','?','?????????','????','?????','??','?????????????','???????????????','?????????????','?????????????','?????????','???????????','???????????','???????????','???','???????????%d ????????','???????????','???????????','???????????','???????????????????????????????????????????????????????????','???','????','??','????','??????????','??????????','??????????','??????','??????','??????','??????','??','??','??','??','??','??????','???????','???????','???????','?????','?????????','?????','?????????','?????','????????????','????????????','????????????','???????','???????','??????????????','??????????????','?????????','?????????','???????????','???????????','???????????','???????','???????','??','????','??????','??????','??????','Hashed','????','?????','??????','%d ?????????????','?? %d','????','%d ???????','???????????','%d ???????????','????????????','??','??','????????','???','??','???','????','?????','?????truncate????','???????????','????????????','???????????','Tables have been optimized.','????????','????????','????','????','???','??','??','??','???','????','??','Truncate','???????????','??','???','?????','??????','????','?:?:?');break;case"ta":$R=array('???????????? ?','?????? ?????????? (upload) ?????? ??????????.','???????? ??????????? ????? %sB.','?????? ?????.','?????? (empty)','?????','????????? ?????.',',','????','???????','?????? ?????? ??? ???????? %s (extension) ???????????????.','?????? ???????.','?????????? ????????','???????','???? ???????? ??????','?????? (String)','??????','??????????','???????????? (Geometry)','??????????','???????? (System)','???????? (Server)','?????????? (User)','????????????','??????????????','????','?????????????? ??????????','???????? ?????? ????','???????????? ??????????????','?????????? ??????','??????????? ??????','?????? ?????????','?????? ????????','????',array('%d ????','%d ??????????'),'?????? ????','Functions','???????? (Aggregation)','????','???????????','?????? ????','???????????????','????????','??? ??????','??????','Full table scan','SQL ????????','????','????','???????????????? ??????','????????????? ??????','????????????? ?????????','???????????? ??????? ????????','?????????? / ????????????????','Dump','????????','??????????????','???????????','?????? ??????????? ?????????','?????? ????','ltr','CSRF ???????? ????????. ?????????? ???????? ???????????.','?????????????? ????????????????.','?????? ??????? ????????????? ????????.','?????? ???????????? ????????. ???????? ??????????.','???????? ???????????? ?????.','?????? (extens????) ????? ','PHP ??????? ?????????? (%s) ?????.','???? ????????? POST ????????. ???????? ???????????? ??????? %s ???????????? (configuration directive) ??????????.','?????????????? ????????????.','???????? ?????????? ???????????????.','???????????????? ?????? ????','?????? ???????????????? ?????????','?????????? ??????','?????????? (Variables)','?????????? (Status)','%s ????????: %s through PHP extension %s','?????????: %s','????????','?????????','??????','???????? (Refresh)','???????????','??????????? ?????????????? (Invalid Schema).','?????? ?????.','%.3f s','?????? ????????','????????','ON DELETE','?????????????? ??????','??????? (Parameter) ??????','????','?????','?????????????? ','?????????','????????????? (Default) ???????????? ','????????','????????? ????????????','???? ??????????','???? ?????????','??????','???????','?????????','??????????','????????????? (Index) ','??????????? (Index) ??????','??????','???????','ON UPDATE','??????','?????? ???? ????????????','??????????????','?????? ?????? ????','??????? ???????','?????????','????????','????????? (Format)','???????? ','??????????????','????????','?????????? ?????????','?????????? ????????????',array('%d ??????','%d ??????????'),array('???????? ????????????????????????, %d ?????? ????????????????.','???????? ????????????????????????, %d ?????????? ???????????????.'),'?????? ???????? ????? ?????????????? ?????.',array('%d ???????? ????????????????????????.','%d ???????????? ????????????????????????.'),'?????? ???????? (upload) ','?????????? ????????? (upload)??????????????????????.','??????????????','???? ????????? ??????','???????? ???????? ??????????????','?????????? ???????','???? ???????? ?????? %s','???????? ???????????','????????','???? (Clear)','??????????? ????','???????? ????????????????.','????????? ??????????????????????.','????????? (Item) ??????????????????.','????????','????','???????? ?????? ?????????? ??????????','?????????? ???? ????????? ????????','??????','????????? ????????????????.','???????? ????????????????.','????????? ???????????????????.','??????????? ?????????','??????????????????? ??????????? ???????????? ????????? ??????????????. ?????? ?????? %s ???????? %s ?? ???????????????.','??????????? ??????','???????','??????????','??????????','???????? ??????','????????????','????????????? (Indexes) ???????????????.','????????? ???? (Index Type)','?????????? (??????)','??????','?????????????? ????????????????.','?????????????? ?????? ????????????????.','?????????????? ???????????????????.','?????????????? ????????????????.','???????????????? ?????????','??????????? ????????????????.','??????????? ???????????????????.','??????????? ????????????????.','???',array('???????????? ????????????????????, %d ?????? ???????? ?????????.','???????????? ?????????????????????, %d ?????????? ??????? ?????????????.'),'?????? ???? ????????????????.','?????? ???? ????????????????.','?????? ???? ???????????????????.','??????? ?????????????? ????????? (Index) ???????? ???????????????? ??????? (Referenced DATA) ???????????? ????????? ????????. ???? ?????????? ???????? ?????? ?????????????? ???????? ???????? (DATA TYPE) ??????? ??????? ????????.','?????? ????','????????? ???????','??????','???? ???????? ????????????','???????? ????????????????.','??????? ???????????????.','???????? ???????????????????.','????????? ?????????','?????????? (Event) ????????????????.','?????????? (Event) ???????????????.','?????????? (Event) ????????????????????.','???????????? (Event) ??????','???????????? (Event) ?????????','????????','???? (??)','???????','???????????? ???? ??????????????','???????? ????????????????.','???????? ???????????????.','???????? ???????????????????.','Function ??????','???????????? ??????','Function ?????????','?????????? ?????????','???????? ????','?????????? ????????????????.','?????????? ???????????????????.','?????????? ????????????????.','???????????? ??????','???????????? ?????????','???? (type) ????????????????.','???? (type) ???????????????????.','???????? (type) ??????','?????? ?????????','?????? ???? ????????????????.','?????? ???? ????????????????.','?????? ???? ???????????????????.','?????? ?????? ??????','?????? ?????? ?????????','??????','??????????','????????????? ????????????????.','????????????? ???????????????.','?????????????? ???????????????????.','Hashed','????????','???????????','?????????????',array('%d ???? ???????? ????????????????.','%d ???????? ???????? ????????????????.'),'??????? %d ','???????? ????????',array('%d ????????? ???????????????.','%d ????????????? ????????????????.'),'?????????? ????? ????? ???? ??????? ???????????? (Double click).',array('%d ?????? ??????????? (Import) ????????????????.','%d ?????????? ??????????? (Import) ???????????????.'),'??????????? ?????? ?????? ????????????','????','????????? (Relations)','????? ?????????? ??????, ???????? ????????? ???????????????.','????????','??????','?????????? ??????','?????? (Clone)','??????????? (Import)','????????? ?????????????????? (truncated).','????????? ????????????????????.','?????????? ??????????? ??????.','????????? ????????????????.','Tables have been optimized.','??????????????? ????????????','???????? ????????????? ????','??????? (Engine)','???????? ??????','Index ??????','Data Free','??????????','?????? ?????????','??????????? (Optimize)','????????','?????? ????','???? (Truncate)','?????? ???????? ????????????? ??????????','??????????','????','??????????','???? ?????????','???????? ??????????','HH:MM:SS');break;case"bn":$R=array('???? ?? ????????','???? ????? ??? ????? ????? ???','???????? ???????? ???? ???? %sB.','?????? ??? ???????? ????','????','??????','??? ????? ????',',','????','???????','??? ???? ????????? %s ??????? ????','???? ???????','??????? ????','??????','????? ??? ????','???????','???????','??????????','????????','??????','???????','???????','??????? ???','?????????','???????','????','?????? ????','???? ???????? ???','??? ?????','??? ???????? ???','????? ????????','???? ?????????','??? ????','????????',array('%d ????','%d ????????'),'????????','????? ????','???? ??????','????','?? ??? ??????','??????','?????????','????','?????? ???????','???????','Full table scan','SQL-????????','????','???????','??????? ????????','?????? ???????? ???','?????? ???? ???','??????? ??????','???????????','?????????','?????','???????','??????','???? ????? ???? ???','????????','ltr','???? CSRF ?????? ???? ???? ??????','????? ??????? ??????','???? ?????? ??????? ??? ???????','??????? ?????? ??? ??????, ???? ???? ?????','??? ??????????','??? ?????????? ???','??? PHP ??????? ????????? (%s) ????? ??? ????','??? ??? POST ????? ???? ????????? ??? ???? %s ?????????? ??????? ?????? ???','??? ????????','??????????? ???? ???? ???????','??????? ???????? ???','???? ??????? ???? ???','?????? ??????','???????','?????????','?????? %s: %s, %s PHP ??????????? ???? ????','%s ?????? ???','???????','?????????','???? ????','???????','??????','???? ???????','??? ???? ????','%.3f s','???? ??','???????','?? ?????','?????? ???','????????????? ???','????','???????','????','???????????? ??????','?????? ???','???????','??????','???? ??????????','???? ??????????','??????','???','?????','????','????????','???????? ????????','???','??????','?? ?????','????????','???? ?? ?????? ???','???????','??????? ?????? ???','??????? ????','?????????','??????','???????','?????????','??????????','????','????? ???? ???','?????????? ??? ????',array('%d ????','%d ???? ????'),array('???????? ??????? ?????, %d ???? ???????? ??????','???????? ??????? ?????, %d ???? ???????? ??????'),'??????? ???? ?? ??? ??????? ????',array('SQL-???????? ??????? ??????? ?????','%d SQL-???????????? ??????? ??????? ?????'),'???? ?????','???? ????? ?????????? ??? ????','??????? ???','?????? ???? ???? ???','????????? ?????? ?????','??????? ????','??????????? ???? %s','???? ?????','??????','??? ???','??? ???????? ???','????????? ???? ???? ??????','????????? ????? ??? ??????','????????????? ?????? ??? ??????','??????','???????','??????? ??? ??? ???????? ??????? ???','??????? ? ??????? ??????','???? ????','????? ???? ???? ??????','????? ???????? ??? ??????','????? ???? ??? ??????','????? ???? ???','???????? ????? ?? ???????? ?????? ??????? ??? ????? ????????????? %s ??? %s ?????? ?????','??????? ???','??????','???????? ??? ???????','????????','?????????? ???','???????','???????? ???????? ??? ??????','????-???','???? (???????)','???','??????? ???? ???? ??????','????????? ???? ?????? ??? ??????','??????? ???? ??? ??????','??????? ???????? ??? ??????','??????? ????','?????? ???? ???? ???????','?????? ???? ??? ???????','?????? ???????? ??? ???????','??',array('????? ?? ??? ?????, %d ?? ???? (????) ???????? ??????','????? ?? ??? ?????, %d ?? ???? (????) ???????? ??????'),'???? ?? ???? ???? ??????','???? ?? ???????? ??? ??????','???? ?? ???? ??? ??????','????? ??? ??????? ????? ??? ???? ???? ????? ???, ??????? ????????? ???? ???? ??? ?????????? ????? ???????? ???? ???????','???? ?? ','??????? ?????','????????','???? ??????','??? ???? ???? ??????','??? ???????? ??? ??????','??? ???? ??? ??????','??? ???? ???','?????? ???? ???? ??????','?????? ???????? ??? ??????','?????? ???? ??? ??????','?????? ???????? ???','?????? ???? ???','????','???????','????????','?????? ?????? ?? ??????? ???','????? ???? ???? ??????','????? ???????? ??? ??????','????? ???? ??? ??????','????? ???????? ???','????????? ???????? ???','????? ???? ???','????????? ???? ???','??????? ????','??????? ???? ???? ???????','??????? ???? ??? ???????','??????? ???????? ??? ???????','??????? ???????? ???','??????? ???? ???','???? ???? ???? ???????','???? ???? ??? ???????','???? ???????? ???','???? ???? ???','??????? ???? ???? ??????','??????? ???????? ??? ??????','??????? ???? ??? ??????','??????? ???????? ???','??????? ???? ???','???','??????','????? ???? ???? ??????','????? ???????? ??? ??????','????? ???? ??? ??????','??????','?????','?????????','?????',array('%d ?? ?????? (????) ?????? ??? ??????','%d ?? ?????? (????) ?????? ??? ??????'),'???????? %d ??','?????? ???','%d ?? ????????? ???????? ?????','??? ????? ???????? ???? ??? ??? ????? ????',array('%d ?? ???? (????) ??????? ??? ??????','%d ?? ???? (????) ??????? ??? ??????'),'????? ???????? ???? ?????','????????','???????','?? ??? ?????????? ???? ???????? ????? ??????? ????','??????','???????','???????? ?????','?????','???????','????? ?????? ??? ?????','????? ?????????? ??? ???????','????? ??? ??? ???????','????????? ???? ???? ??????','Tables have been optimized.','????? ??? ??? ????','?????? ???? ???','??????','????? ???????','??????? ?? ???????','???? ?????','????','????????','????????','???????','??????','??????','???? ???????? ?????????? ???','?????????? ???','???','???????','????????','??????? ?????','HH:MM:SS');break;case"ar":$R=array('?? ??? ??????','?? ??? ?????? ??? ?????.','??? ????? ?????? ?? %sB.','????? ??? ?????.','????','??????','?? ???? ?????.',',','?????','????????','?? ???? ?????? ???? ??????????: %s.','????? ?????.','??? ????????','?????','??????? ? ?????','?????','??????','????','?????','?????','??????','??????','????????','???? ??????','????? ??????','????? ??????','????? ???? ????','??? ????????','??? ????????','????? ???','????? ??????','???? ????','?????? ???????','?????','%d ????','??????','??????','?????','???','?? ?? ????','?????','??????','??','??? ????','????','Full table scan','??????? SQL','???','???','????? ????? ????????','????? ??????','????? ????','???? ????? ????????','??????????','?????','????? ??????','????? ??????','??????','???? ???? ????','?????','rtl','CSRF Token ????. ?? ???? ??? ????? ?????????.','?? ???????.','???? ????? ???? ???????.','????? ??????? ?? ???? ??? ????? ??????.','??? ?? ????? ??????.','?????? ??? ?????','???????? php ???????? ??? ??????.','??????? POST ????? ???. ?? ?????? ??? ????????? ?? ?? ?????? ???? %s ?? ?????? ?? PHP.','????? ?????? ?????.','?? ??? ????? ????????.','???? ????? ????????','???? ????? ??????','????? ?????????','???????','????','?????? %s : %s ?? ???? ?????? ?? PHP %s','?? ????? ?????? ???? %s','?????','?????','???','?????','??????','???? ????.','?? ???? ?????.','%.3f s','?????? ??????','???????','ON DELETE','??? ??????','??? ???????','?????','?????','??????','????? ??????','?????? ??????????','?????','????? ??????','??? ??????','??? ??????','???','???','????','????','????????','????? ????????','??????','?????','ON UPDATE','?????','????? ????? ?????','????????','????? ????','???? ?????','?????','?????','??????','?????????','???????','???????','????? ??????','???? ??? ?? ?????????','%d ????','?? ????? ?????????, %d ??? ?????? ???????.','?? ???? ????? ???????.',array('?? ????? ????????? %d ?????.','?? ????? ??????????? %d ?????.'),'??? ???','?? ????? ??? ???????.','?????','???? ?? ???? ???? ???','???? ??????? ???','?? ??????','??? %s ?? ???? ?????','??? ?????','?????','???','????? ????','?? ??? ??????.','?? ????? ??????.','?? ????? ??????.','?????','???','???? ? ???? ???????','??? ? ????? ??????','???','?? ??? ??????.','?? ????? ??????.','?? ????? ??????.','????? ????','??? ?????? ????? ?????? ??????. ???? ????? ?? %s ? %s.','??? ??????','??????','???? ??????','?????????','??? ???????','?????','?? ????? ??????.','??? ??????','?????? (?????)','?????','?? ??? ????? ????????.','??? ????? ????? ????? ????????.','?? ????? ????? ????????.','?? ????? ????? ????????.','????? ????? ??????','?? ??? ??????.','?? ????? ??????.','?? ????? ??????.','???????','?? ??????? ???????, ??? ?????? ??????? %d.','??????? ??????? ?? ????.','??????? ??????? ?? ??????.','??????? ??????? ?? ??????.','????? ?????? ? ????? ??? ?? ???? ???? ?????, ??? ?? ???? ???? ???? ?? ????? ????? ? ???????? ???????? ??? ?? ???? ??????.','????? ?????','?????? ????????','?????','??? ????','?? ??? ?????.','?? ????? ?????.','?? ????? ?????.','????? ???','?? ??? ?????.','?? ????? ?????.','?? ????? ?????.','????? ???','????? ???','????','?????','??','??? ??? ????????','?? ??? ???????.','?? ????? ???????.','?? ????? ???????.','????? ??????','????? ???????','????? ????','????? ?????','??? ??????','?? ??? ???????.','?? ????? ???????.','?? ????? ???????.','????? ?????','????? ?????','?? ??? ?????.','?? ????? ?????.','????? ???','????? ???','?? ??? ??????.','?? ????? ??????.','?? ????? ??????.','????? ????','????? ????','?????','?????','?? ??? ????????.','?? ????? ????????.','?? ????? ????????.','?????','?????','?????','?????','??? ????????? ???? ?? ??????? %d.','%d ?? ???????','?????','??? ??????? ??????? ?? %d.','???? ???? ?????? ??? ???? ????????.','??? ?????? ????????? ?? %d.','?? ??? ?????? ?????? ??????','?????','??????','?????? ?????? "?????" ?????? ??? ??????.','????','???????','????? ?????','???','???????','?? ??? ???????.','?? ??? ???????.','?? ??? ???????.','?? ??? ???????.','Tables have been optimized.','??????? ? ??????','??? ?? ???????','??????','??? ????????.','??? ??????.','??????? ?????','??????','?????','?????','???','?????','???','??? ??? ????? ?????? ????','???','???','???????','??????','?? ??? ????','HH:MM:SS');break;case"fa":$R=array('????? ??????','???? ?? ???????? ???? ??????',' %sB ?????? ?????? ????','???? ???? ?????','????','????','????? ???? ?????',' ','????','???????','???? ??? ?? ???????? ??? ?? ?????? ?????? %s ','???? ????? ???','????? ?????','?????','????? ? ????','???? ??','??????','????','?????','??????','?????','????','??? ??????','???? ????','?????? ????','????','','?????? ????','????? ??????','??? ?????','?????? ????','???? ????','???? ???','??????',array('%d ????','%d ????'),'??????','?????','????','?????','?????','???? ????','?????','???????','??? ???','??????','Full table scan','????? ?? ??? ??','???????','?????','?????? ?????? ????','?????? ??????','????? ??????','?????? ?????? ????','????????','???? ????','????','?????? ????','??????','????? ???? ????','??????','rtl','??????? ???. ?????? ??? ???? Token CSRF','?? ?????? ???? ????','???????? ?? ???? ?????? ???? ????','???? ????? ?????? ???? ?????? ???? ????','?????? ???? ???????','????? ???????',' ????? ?? ?? ?? ?? ????? ???? (%s) ?????','??? ???? ?????? ???? ???. ??? ???? ???? ???? ? ?? ????? %s ?? ?? ???????? ?????? ????.','?????? ???? ???????','?????? ????? ??? ????','?????? ?????? ????','????? ?????? ???? ????','???? ??????','???????','?????','???? %s : %s ????? ?? ?? ?? %s','???? ?? ?????: %s','?????','??????','???','???????','??????','?????? ???????','???? ???? ?????','%.3f s','??????? ?????','?????','ON DELETE','??? ????','??? ???????','???','???','????????','?????? ??????','?????? ??? ???','?????','?????? ????','?????? ?? ????','?????? ?? ?????','???','?????','????','????','????????','?????? ????????','????','???','ON UPDATE','??????','?????? ???? ?????','???????','?????? ?????','?????? ????','???????','?????','???','??????','????????','????','????? ?????','??? ?? ?????',array('%d ???','%d ???'),'????? ???? ??. %d ??? ????? ???.','?????? ???? ???? ???? ?????','%d ????? ???? ??','???????? ????','???????? ??? ???? ???','????','???? ?? ???','??? ????? ?????','?? ????','%s ???? ?? ????','????? ????','?????','??? ????','?????? ???','???? ??? ??','???? ???? ????? ??','%s ???? ??? ??','???','?????','????? ? ????? ??????','????? ? ??? ????','???','???? ??? ??','???? ?????? ??','???? ????? ??','????? ????','?????? ???? ??????? ???? ????? ??. ???? %s ? %s ?? ???? ????','??? ????','?????','??????? ????','?????????','??? ???','??????','???????? ?????? ??','??? ??????','???? (???)','???','?????? ???? ??? ??','??? ?????? ???? ????? ???','?????? ???? ????? ??','?????? ???? ?????? ??','????? ?????? ????','?????? ??? ??','?????? ????? ??','?????? ?????? ??','??? ???',array('???? ???????? ?? %d ??? ????? ??','???? ???????? ?? %d ??? ????? ??'),'???? ????? ??? ??','???? ????? ?????? ??','???? ????? ????? ??','???? ???? ? ???? ?????? ?????? ???? ?? ?????','???? ?????','???? ???','?????','?????? ????','????? ??? ??','????? ?????? ??','????? ????? ??','????? ?????','?????? ??? ??','?????? ?????? ??','?????? ????? ??','?????? ??????','????? ??????','????','?????','???','????? ????? ???? ???','???? ??? ??','???? ?????? ??','???? ????? ??','?????? ????','?????? ?????????','????? ????','????? ?????????','????????? ???','?? ??? ??','?? ????? ??','?? ?????? ??','?????? ??','????? ??','??? ??? ??','??? ????? ??','?????? ???','????? ???','????? ??? ??','????? ?????? ??','????? ????? ??','?????? ?????','????? ?????','????','??????','????? ??? ??','????? ?????? ?????','????? ????? ??','?? ?? ?????','?????','????','??? ????','%d ?????? ????? ??',' ?? ??? ?? %d ','??? ??????',array('%d ???? ????? ??','%d ???? ????? ??'),'??? ????? ????? ???? ???? ?? ???? ?????? ????',array('%d ??? ???? ??','%d ??? ???? ??'),'???? ?? ?????? ???? ??????','??????','????? ??','?? ???? ?????? ???? ?????? ??? ????? ??????? ????','????','????','??? ?????','?????','???? ????','?????? ????? ????','?????? ?????? ???? ????','?????? ??? ????','?????? ??? ????','Tables have been optimized.','?????? ? ????? ??','?????? ???? ?? ????','?????','??? ????','??? ??????','???? ???????','?????','?????','????? ????','?????','?????','????? ????','?????? ?? ?? ?????? ???? ????','??????','??? ????','?? ??','????????','???? ????','?????');break;}if(extension_loaded('pdo')){class
- Min_PDO
- extends
- PDO{var$_result,$server_info,$affected_rows,$error;function
- __construct(){global$b;$re=array_search("",$b->operators);if($re!==false)unset($b->operators[$re]);}function
- dsn($_b,$U,$B,$Tb='auth_error'){set_exception_handler($Tb);parent::__construct($_b,$U,$B);restore_exception_handler();$this->setAttribute(13,array('Min_PDOStatement'));$this->server_info=$this->getAttribute(4);}function
- query($D,$Zf=false){$E=parent::query($D);$this->error="";if(!$E){$Nb=$this->errorInfo();$this->error=$Nb[2];return
- false;}$this->store_result($E);return$E;}function
- multi_query($D){return$this->_result=$this->query($D);}function
- store_result($E=null){if(!$E)$E=$this->_result;if($E->columnCount()){$E->num_rows=$E->rowCount();return$E;}$this->affected_rows=$E->rowCount();return
- true;}function
- next_result(){$this->_result->_offset=0;return@$this->_result->nextRowset();}function
- result($D,$l=0){$E=$this->query($D);if(!$E)return
- false;$G=$E->fetch();return$G[$l];}}class
- Min_PDOStatement
- extends
- PDOStatement{var$_offset=0,$num_rows;function
- fetch_assoc(){return$this->fetch(2);}function
- fetch_row(){return$this->fetch(3);}function
- fetch_field(){$G=(object)$this->getColumnMeta($this->_offset++);$G->orgtable=$G->table;$G->orgname=$G->name;$G->charsetnr=(in_array("blob",(array)$G->flags)?63:0);return$G;}}}$xb=array();$xb["sqlite"]="SQLite 3";$xb["sqlite2"]="SQLite 2";if(isset($_GET["sqlite"])||isset($_GET["sqlite2"])){$ue=array((isset($_GET["sqlite"])?"SQLite3":"SQLite"),"PDO_SQLite");define("DRIVER",(isset($_GET["sqlite"])?"sqlite":"sqlite2"));if(extension_loaded(isset($_GET["sqlite"])?"sqlite3":"sqlite")){if(isset($_GET["sqlite"])){class
- Min_SQLite{var$extension="SQLite3",$server_info,$affected_rows,$error,$_link;function
- Min_SQLite($ec){$this->_link=new
- SQLite3($ec);$ng=$this->_link->version();$this->server_info=$ng["versionString"];}function
- query($D){$E=@$this->_link->query($D);$this->error="";if(!$E){$this->error=$this->_link->lastErrorMsg();return
- false;}elseif($E->numColumns())return
- new
- Min_Result($E);$this->affected_rows=$this->_link->changes();return
- true;}function
- quote($L){return(is_utf8($L)?"'".$this->_link->escapeString($L)."'":"x'".reset(unpack('H*',$L))."'");}function
- store_result(){return$this->_result;}function
- result($D,$l=0){$E=$this->query($D);if(!is_object($E))return
- false;$G=$E->_result->fetchArray();return$G[$l];}}class
- Min_Result{var$_result,$_offset=0,$num_rows;function
- Min_Result($E){$this->_result=$E;}function
- fetch_assoc(){return$this->_result->fetchArray(SQLITE3_ASSOC);}function
- fetch_row(){return$this->_result->fetchArray(SQLITE3_NUM);}function
- fetch_field(){$e=$this->_offset++;$S=$this->_result->columnType($e);return(object)array("name"=>$this->_result->columnName($e),"type"=>$S,"charsetnr"=>($S==SQLITE3_BLOB?63:0),);}function
- __desctruct(){return$this->_result->finalize();}}}else{class
- Min_SQLite{var$extension="SQLite",$server_info,$affected_rows,$error,$_link;function
- Min_SQLite($ec){$this->server_info=sqlite_libversion();$this->_link=new
- SQLiteDatabase($ec);}function
- query($D,$Zf=false){$vd=($Zf?"unbufferedQuery":"query");$E=@$this->_link->$vd($D,SQLITE_BOTH,$k);$this->error="";if(!$E){$this->error=$k;return
- false;}elseif($E===true){$this->affected_rows=$this->changes();return
- true;}return
- new
- Min_Result($E);}function
- quote($L){return"'".sqlite_escape_string($L)."'";}function
- store_result(){return$this->_result;}function
- result($D,$l=0){$E=$this->query($D);if(!is_object($E))return
- false;$G=$E->_result->fetch();return$G[$l];}}class
- Min_Result{var$_result,$_offset=0,$num_rows;function
- Min_Result($E){$this->_result=$E;if(method_exists($E,'numRows'))$this->num_rows=$E->numRows();}function
- fetch_assoc(){$G=$this->_result->fetch(SQLITE_ASSOC);if(!$G)return
- false;$F=array();foreach($G
- as$v=>$W)$F[($v[0]=='"'?idf_unescape($v):$v)]=$W;return$F;}function
- fetch_row(){return$this->_result->fetch(SQLITE_NUM);}function
- fetch_field(){$_=$this->_result->fieldName($this->_offset++);$oe='(\\[.*]|"(?:[^"]|"")*"|(.+))';if(preg_match("~^($oe\\.)?$oe\$~",$_,$z)){$N=($z[3]!=""?$z[3]:idf_unescape($z[2]));$_=($z[5]!=""?$z[5]:idf_unescape($z[4]));}return(object)array("name"=>$_,"orgname"=>$_,"orgtable"=>$N,);}}}}elseif(extension_loaded("pdo_sqlite")){class
- Min_SQLite
- extends
- Min_PDO{var$extension="PDO_SQLite";function
- Min_SQLite($ec){$this->dsn(DRIVER.":$ec","","");}}}if(class_exists("Min_SQLite")){class
- Min_DB
- extends
- Min_SQLite{function
- Min_DB(){$this->Min_SQLite(":memory:");}function
- select_db($ec){if(is_readable($ec)&&$this->query("ATTACH ".$this->quote(ereg("(^[/\\\\]|:)",$ec)?$ec:dirname($_SERVER["SCRIPT_FILENAME"])."/$ec")." AS a")){$this->Min_SQLite($ec);return
- true;}return
- false;}function
- multi_query($D){return$this->_result=$this->query($D);}function
- next_result(){return
- false;}}}function
- idf_escape($r){return'"'.str_replace('"','""',$r).'"';}function
- table($r){return
- idf_escape($r);}function
- connect(){return
- new
- Min_DB;}function
- get_databases(){return
- array();}function
- limit($D,$Z,$x,$A=0,$ef=" "){return" $D$Z".($x!==null?$ef."LIMIT $x".($A?" OFFSET $A":""):"");}function
- limit1($D,$Z){global$g;return($g->result("SELECT sqlite_compileoption_used('ENABLE_UPDATE_DELETE_LIMIT')")?limit($D,$Z,1):" $D$Z");}function
- db_collation($j,$Ta){global$g;return$g->result("PRAGMA encoding");}function
- engines(){return
- array();}function
- logged_user(){return
- get_current_user();}function
- tables_list(){return
- get_key_vals("SELECT name, type FROM sqlite_master WHERE type IN ('table', 'view') ORDER BY (name = 'sqlite_sequence'), name",1);}function
- count_tables($i){return
- array();}function
- table_status($_=""){global$g;$F=array();foreach(get_rows("SELECT name AS Name, type AS Engine FROM sqlite_master WHERE type IN ('table', 'view')".($_!=""?" AND name = ".q($_):""))as$G){$G["Oid"]="t";$G["Auto_increment"]="";$G["Rows"]=$g->result("SELECT COUNT(*) FROM ".idf_escape($G["Name"]));$F[$G["Name"]]=$G;}foreach(get_rows("SELECT * FROM sqlite_sequence",null,"")as$G)$F[$G["name"]]["Auto_increment"]=$G["seq"];return($_!=""?$F[$_]:$F);}function
- is_view($O){return$O["Engine"]=="view";}function
- fk_support($O){global$g;return!$g->result("SELECT sqlite_compileoption_used('OMIT_FOREIGN_KEY')");}function
- fields($N){$F=array();foreach(get_rows("PRAGMA table_info(".table($N).")")as$G){$S=strtolower($G["type"]);$qb=$G["dflt_value"];$F[$G["name"]]=array("field"=>$G["name"],"type"=>(eregi("int",$S)?"integer":(eregi("char|clob|text",$S)?"text":(eregi("blob",$S)?"blob":(eregi("real|floa|doub",$S)?"real":"numeric")))),"full_type"=>$S,"default"=>(ereg("'(.*)'",$qb,$z)?str_replace("''","'",$z[1]):($qb=="NULL"?null:$qb)),"null"=>!$G["notnull"],"auto_increment"=>eregi('^integer$',$S)&&$G["pk"],"privileges"=>array("select"=>1,"insert"=>1,"update"=>1),"primary"=>$G["pk"],);}return$F;}function
- indexes($N,$h=null){$F=array();$xe=array();foreach(fields($N)as$l){if($l["primary"])$xe[]=$l["field"];}if($xe)$F[""]=array("type"=>"PRIMARY","columns"=>$xe,"lengths"=>array());foreach(get_rows("PRAGMA index_list(".table($N).")")as$G){if(!ereg("^sqlite_",$G["name"])){$F[$G["name"]]["type"]=($G["unique"]?"UNIQUE":"INDEX");$F[$G["name"]]["lengths"]=array();foreach(get_rows("PRAGMA index_info(".idf_escape($G["name"]).")")as$We)$F[$G["name"]]["columns"][]=$We["name"];}}return$F;}function
- foreign_keys($N){$F=array();foreach(get_rows("PRAGMA foreign_key_list(".table($N).")")as$G){$n=&$F[$G["id"]];if(!$n)$n=$G;$n["source"][]=$G["from"];$n["target"][]=$G["to"];}return$F;}function
- view($_){global$g;return
- array("select"=>preg_replace('~^(?:[^`"[]+|`[^`]*`|"[^"]*")* AS\\s+~iU','',$g->result("SELECT sql FROM sqlite_master WHERE name = ".q($_))));}function
- collations(){return(isset($_GET["create"])?get_vals("PRAGMA collation_list",1):array());}function
- information_schema($j){return
- false;}function
- error(){global$g;return
- h($g->error);}function
- exact_value($W){return
- q($W);}function
- check_sqlite_name($_){global$g;$ac="db|sdb|sqlite";if(!preg_match("~^[^\\0]*\\.($ac)\$~",$_)){$g->error=lang(10,str_replace("|",", ",$ac));return
- false;}return
- true;}function
- create_database($j,$d){global$g;if(file_exists($j)){$g->error=lang(11);return
- false;}if(!check_sqlite_name($j))return
- false;$y=new
- Min_SQLite($j);$y->query('PRAGMA encoding = "UTF-8"');$y->query('CREATE TABLE adminer (i)');$y->query('DROP TABLE adminer');return
- true;}function
- drop_databases($i){global$g;$g->Min_SQLite(":memory:");foreach($i
- as$j){if(!@unlink($j)){$g->error=lang(11);return
- false;}}return
- true;}function
- rename_database($_,$d){global$g;if(!check_sqlite_name($_))return
- false;$g->Min_SQLite(":memory:");$g->error=lang(11);return@rename(DB,$_);}function
- auto_increment(){return" PRIMARY KEY".(DRIVER=="sqlite"?" AUTOINCREMENT":"");}function
- alter_table($N,$_,$m,$ic,$Xa,$Jb,$d,$Ba,$le){$ig=($N==""||$ic);foreach($m
- as$l){if($l[0]!=""||!$l[1]||$l[2]){$ig=true;break;}}$c=array();$be=array();$ye=false;foreach($m
- as$l){if($l[1]){if($l[1][6])$ye=true;$c[]=($ig?" ":"ADD ").implode($l[1]);if($l[0]!="")$be[$l[0]]=$l[1][0];}}if($ig){if($N!=""){queries("BEGIN");foreach(foreign_keys($N)as$n){$f=array();foreach($n["source"]as$e){if(!$be[$e])continue
- 2;$f[]=$be[$e];}$ic[]=" FOREIGN KEY (".implode(", ",$f).") REFERENCES ".table($n["table"])." (".implode(", ",array_map('idf_escape',$n["target"])).") ON DELETE $n[on_delete] ON UPDATE $n[on_update]";}$t=array();foreach(indexes($N)as$Rc=>$s){$f=array();foreach($s["columns"]as$e){if(!$be[$e])continue
- 2;$f[]=$be[$e];}$f="(".implode(", ",$f).")";if($s["type"]!="PRIMARY")$t[]=array($s["type"],$Rc,$f);elseif(!$ye)$ic[]=" PRIMARY KEY $f";}}$c=array_merge($c,$ic);if(!queries("CREATE TABLE ".table($N!=""?"adminer_$_":$_)." (\n".implode(",\n",$c)."\n)"))return
- false;if($N!=""){if($be&&!queries("INSERT INTO ".table("adminer_$_")." (".implode(", ",$be).") SELECT ".implode(", ",array_map('idf_escape',array_keys($be)))." FROM ".table($N)))return
- false;$Wf=array();foreach(triggers($N)as$Uf=>$Jf){$Sf=trigger($Uf);$Wf[]="CREATE TRIGGER ".idf_escape($Uf)." ".implode(" ",$Jf)." ON ".table($_)."\n$Sf[Statement]";}if(!queries("DROP TABLE ".table($N)))return
- false;queries("ALTER TABLE ".table("adminer_$_")." RENAME TO ".table($_));if(!alter_indexes($_,$t))return
- false;foreach($Wf
- as$Sf){if(!queries($Sf))return
- false;}queries("COMMIT");}}else{foreach($c
- as$W){if(!queries("ALTER TABLE ".table($N)." $W"))return
- false;}if($N!=$_&&!queries("ALTER TABLE ".table($N)." RENAME TO ".table($_)))return
- false;}if($Ba)queries("UPDATE sqlite_sequence SET seq = $Ba WHERE name = ".q($_));return
- true;}function
- alter_indexes($N,$c){foreach($c
- as$W){if(!queries($W[2]=="DROP"?"DROP INDEX ".idf_escape($W[1]):"CREATE $W[0] ".($W[0]!="INDEX"?"INDEX ":"").idf_escape($W[1]!=""?$W[1]:uniqid($N."_"))." ON ".table($N)." $W[2]"))return
- false;}return
- true;}function
- truncate_tables($P){return
- apply_queries("DELETE FROM",$P);}function
- drop_views($Y){return
- apply_queries("DROP VIEW",$Y);}function
- drop_tables($P){return
- apply_queries("DROP TABLE",$P);}function
- move_tables($P,$Y,$Ef){return
- false;}function
- trigger($_){global$g;if($_=="")return
- array("Statement"=>"BEGIN\n\t;\nEND");preg_match('~^CREATE\\s+TRIGGER\\s*(?:[^`"\\s]+|`[^`]*`|"[^"]*")+\\s*([a-z]+)\\s+([a-z]+)\\s+ON\\s*(?:[^`"\\s]+|`[^`]*`|"[^"]*")+\\s*(?:FOR\\s*EACH\\s*ROW\\s)?(.*)~is',$g->result("SELECT sql FROM sqlite_master WHERE name = ".q($_)),$z);return
- array("Timing"=>strtoupper($z[1]),"Event"=>strtoupper($z[2]),"Trigger"=>$_,"Statement"=>$z[3]);}function
- triggers($N){$F=array();foreach(get_rows("SELECT * FROM sqlite_master WHERE type = 'trigger' AND tbl_name = ".q($N))as$G){preg_match('~^CREATE\\s+TRIGGER\\s*(?:[^`"\\s]+|`[^`]*`|"[^"]*")+\\s*([a-z]+)\\s*([a-z]+)~i',$G["sql"],$z);$F[$G["name"]]=array($z[1],$z[2]);}return$F;}function
- trigger_options(){return
- array("Timing"=>array("BEFORE","AFTER","INSTEAD OF"),"Type"=>array("FOR EACH ROW"),);}function
- routine($_,$S){}function
- routines(){}function
- routine_languages(){}function
- begin(){return
- queries("BEGIN");}function
- insert_into($N,$K){return
- queries("INSERT INTO ".table($N).($K?" (".implode(", ",array_keys($K)).")\nVALUES (".implode(", ",$K).")":"DEFAULT VALUES"));}function
- insert_update($N,$K,$xe){return
- queries("REPLACE INTO ".table($N)." (".implode(", ",array_keys($K)).") VALUES (".implode(", ",$K).")");}function
- last_id(){global$g;return$g->result("SELECT LAST_INSERT_ROWID()");}function
- explain($g,$D){return$g->query("EXPLAIN $D");}function
- found_rows($O,$Z){}function
- types(){return
- array();}function
- schemas(){return
- array();}function
- get_schema(){return"";}function
- set_schema($af){return
- true;}function
- create_sql($N,$Ba){global$g;return$g->result("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = ".q($N));}function
- truncate_sql($N){return"DELETE FROM ".table($N);}function
- use_sql($nb){}function
- trigger_sql($N,$M){return
- implode(get_vals("SELECT sql || ';;\n' FROM sqlite_master WHERE type = 'trigger' AND tbl_name = ".q($N)));}function
- show_variables(){global$g;$F=array();foreach(array("auto_vacuum","cache_size","count_changes","default_cache_size","empty_result_callbacks","encoding","foreign_keys","full_column_names","fullfsync","journal_mode","journal_size_limit","legacy_file_format","locking_mode","page_size","max_page_count","read_uncommitted","recursive_triggers","reverse_unordered_selects","secure_delete","short_column_names","synchronous","temp_store","temp_store_directory","schema_version","integrity_check","quick_check")as$v)$F[$v]=$g->result("PRAGMA $v");return$F;}function
- show_status(){$F=array();foreach(get_vals("PRAGMA compile_options")as$Qd){list($v,$W)=explode("=",$Qd,2);$F[$v]=$W;}return$F;}function
- support($cc){return
- ereg('^(view|trigger|variables|status|dump|move_col|drop_col)$',$cc);}$u="sqlite";$T=array("integer"=>0,"real"=>0,"numeric"=>0,"text"=>0,"blob"=>0);$qf=array_keys($T);$fg=array();$Pd=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL","");$rc=array("hex","length","lower","round","unixepoch","upper");$wc=array("avg","count","count distinct","group_concat","max","min","sum");$Cb=array(array(),array("integer|real|numeric"=>"+/-","text"=>"||",));}$xb["pgsql"]="PostgreSQL";if(isset($_GET["pgsql"])){$ue=array("PgSQL","PDO_PgSQL");define("DRIVER","pgsql");if(extension_loaded("pgsql")){class
- Min_DB{var$extension="PgSQL",$_link,$_result,$_string,$_database=true,$server_info,$affected_rows,$error;function
- _error($Mb,$k){if(ini_bool("html_errors"))$k=html_entity_decode(strip_tags($k));$k=ereg_replace('^[^:]*: ','',$k);$this->error=$k;}function
- connect($J,$U,$B){global$b;$j=$b->database();set_error_handler(array($this,'_error'));$this->_string="host='".str_replace(":","' port='",addcslashes($J,"'\\"))."' user='".addcslashes($U,"'\\")."' password='".addcslashes($B,"'\\")."'";$this->_link=@pg_connect("$this->_string dbname='".($j!=""?addcslashes($j,"'\\"):"postgres")."'",PGSQL_CONNECT_FORCE_NEW);if(!$this->_link&&$j!=""){$this->_database=false;$this->_link=@pg_connect("$this->_string dbname='postgres'",PGSQL_CONNECT_FORCE_NEW);}restore_error_handler();if($this->_link){$ng=pg_version($this->_link);$this->server_info=$ng["server"];pg_set_client_encoding($this->_link,"UTF8");}return(bool)$this->_link;}function
- quote($L){return"'".pg_escape_string($this->_link,$L)."'";}function
- select_db($nb){global$b;if($nb==$b->database())return$this->_database;$F=@pg_connect("$this->_string dbname='".addcslashes($nb,"'\\")."'",PGSQL_CONNECT_FORCE_NEW);if($F)$this->_link=$F;return$F;}function
- close(){$this->_link=@pg_connect("$this->_string dbname='postgres'");}function
- query($D,$Zf=false){$E=@pg_query($this->_link,$D);$this->error="";if(!$E){$this->error=pg_last_error($this->_link);return
- false;}elseif(!pg_num_fields($E)){$this->affected_rows=pg_affected_rows($E);return
- true;}return
- new
- Min_Result($E);}function
- multi_query($D){return$this->_result=$this->query($D);}function
- store_result(){return$this->_result;}function
- next_result(){return
- false;}function
- result($D,$l=0){$E=$this->query($D);if(!$E||!$E->num_rows)return
- false;return
- pg_fetch_result($E->_result,0,$l);}}class
- Min_Result{var$_result,$_offset=0,$num_rows;function
- Min_Result($E){$this->_result=$E;$this->num_rows=pg_num_rows($E);}function
- fetch_assoc(){return
- pg_fetch_assoc($this->_result);}function
- fetch_row(){return
- pg_fetch_row($this->_result);}function
- fetch_field(){$e=$this->_offset++;$F=new
- stdClass;if(function_exists('pg_field_table'))$F->orgtable=pg_field_table($this->_result,$e);$F->name=pg_field_name($this->_result,$e);$F->orgname=$F->name;$F->type=pg_field_type($this->_result,$e);$F->charsetnr=($F->type=="bytea"?63:0);return$F;}function
- __destruct(){pg_free_result($this->_result);}}}elseif(extension_loaded("pdo_pgsql")){class
- Min_DB
- extends
- Min_PDO{var$extension="PDO_PgSQL";function
- connect($J,$U,$B){global$b;$j=$b->database();$L="pgsql:host='".str_replace(":","' port='",addcslashes($J,"'\\"))."' options='-c client_encoding=utf8'";$this->dsn("$L dbname='".($j!=""?addcslashes($j,"'\\"):"postgres")."'",$U,$B);return
- true;}function
- select_db($nb){global$b;return($b->database()==$nb);}function
- close(){}}}function
- idf_escape($r){return'"'.str_replace('"','""',$r).'"';}function
- table($r){return
- idf_escape($r);}function
- connect(){global$b;$g=new
- Min_DB;$jb=$b->credentials();if($g->connect($jb[0],$jb[1],$jb[2])){if($g->server_info>=9)$g->query("SET application_name = 'Adminer'");return$g;}return$g->error;}function
- get_databases(){return
- get_vals("SELECT datname FROM pg_database ORDER BY datname");}function
- limit($D,$Z,$x,$A=0,$ef=" "){return" $D$Z".($x!==null?$ef."LIMIT $x".($A?" OFFSET $A":""):"");}function
- limit1($D,$Z){return" $D$Z";}function
- db_collation($j,$Ta){global$g;return$g->result("SHOW LC_COLLATE");}function
- engines(){return
- array();}function
- logged_user(){global$g;return$g->result("SELECT user");}function
- tables_list(){return
- get_key_vals("SELECT table_name, table_type FROM information_schema.tables WHERE table_schema = current_schema() ORDER BY table_name");}function
- count_tables($i){return
- array();}function
- table_status($_=""){$F=array();foreach(get_rows("SELECT relname AS \"Name\", CASE relkind WHEN 'r' THEN 'table' ELSE 'view' END AS \"Engine\", pg_relation_size(oid) AS \"Data_length\", pg_total_relation_size(oid) - pg_relation_size(oid) AS \"Index_length\", obj_description(oid, 'pg_class') AS \"Comment\", relhasoids AS \"Oid\", reltuples as \"Rows\"
- FROM pg_class
- WHERE relkind IN ('r','v')
- AND relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema())".($_!=""?" AND relname = ".q($_):""))as$G)$F[$G["Name"]]=$G;return($_!=""?$F[$_]:$F);}function
- is_view($O){return$O["Engine"]=="view";}function
- fk_support($O){return
- true;}function
- fields($N){$F=array();foreach(get_rows("SELECT a.attname AS field, format_type(a.atttypid, a.atttypmod) AS full_type, d.adsrc AS default, a.attnotnull, col_description(c.oid, a.attnum) AS comment
- FROM pg_class c
- JOIN pg_namespace n ON c.relnamespace = n.oid
- JOIN pg_attribute a ON c.oid = a.attrelid
- LEFT JOIN pg_attrdef d ON c.oid = d.adrelid AND a.attnum = d.adnum
- WHERE c.relname = ".q($N)."
- AND n.nspname = current_schema()
- AND NOT a.attisdropped
- AND a.attnum > 0
- ORDER BY a.attnum")as$G){ereg('(.*)(\\((.*)\\))?',$G["full_type"],$z);list(,$G["type"],,$G["length"])=$z;$G["full_type"]=$G["type"].($G["length"]?"($G[length])":"");$G["null"]=($G["attnotnull"]=="f");$G["auto_increment"]=eregi("^nextval\\(",$G["default"]);$G["privileges"]=array("insert"=>1,"select"=>1,"update"=>1);if(preg_match('~^(.*)::.+$~',$G["default"],$z))$G["default"]=($z[1][0]=="'"?idf_unescape($z[1]):$z[1]);$F[$G["field"]]=$G;}return$F;}function
- indexes($N,$h=null){global$g;if(!is_object($h))$h=$g;$F=array();$zf=$h->result("SELECT oid FROM pg_class WHERE relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema()) AND relname = ".q($N));$f=get_key_vals("SELECT attnum, attname FROM pg_attribute WHERE attrelid = $zf AND attnum > 0",$h);foreach(get_rows("SELECT relname, indisunique, indisprimary, indkey FROM pg_index i, pg_class ci WHERE i.indrelid = $zf AND ci.oid = i.indexrelid",$h)as$G){$F[$G["relname"]]["type"]=($G["indisprimary"]=="t"?"PRIMARY":($G["indisunique"]=="t"?"UNIQUE":"INDEX"));$F[$G["relname"]]["columns"]=array();foreach(explode(" ",$G["indkey"])as$Fc)$F[$G["relname"]]["columns"][]=$f[$Fc];$F[$G["relname"]]["lengths"]=array();}return$F;}function
- foreign_keys($N){global$Ld;$F=array();foreach(get_rows("SELECT conname, pg_get_constraintdef(oid) AS definition
- FROM pg_constraint
- WHERE conrelid = (SELECT pc.oid FROM pg_class AS pc INNER JOIN pg_namespace AS pn ON (pn.oid = pc.relnamespace) WHERE pc.relname = ".q($N)." AND pn.nspname = current_schema())
- AND contype = 'f'::char
- ORDER BY conkey, conname")as$G){if(preg_match('~FOREIGN KEY\s*\((.+)\)\s*REFERENCES (.+)\((.+)\)(.*)$~iA',$G['definition'],$z)){$G['source']=array_map('trim',explode(',',$z[1]));$G['table']=$z[2];if(preg_match('~(.+)\.(.+)~',$z[2],$id)){$G['ns']=$id[1];$G['table']=$id[2];}$G['target']=array_map('trim',explode(',',$z[3]));$G['on_delete']=(preg_match("~ON DELETE ($Ld)~",$z[4],$id)?$id[1]:'NO ACTION');$G['on_update']=(preg_match("~ON UPDATE ($Ld)~",$z[4],$id)?$id[1]:'NO ACTION');$F[$G['conname']]=$G;}}return$F;}function
- view($_){global$g;return
- array("select"=>$g->result("SELECT pg_get_viewdef(".q($_).")"));}function
- collations(){return
- array();}function
- information_schema($j){return($j=="information_schema");}function
- error(){global$g;$F=h($g->error);if(preg_match('~^(.*\\n)?([^\\n]*)\\n( *)\\^(\\n.*)?$~s',$F,$z))$F=$z[1].preg_replace('~((?:[^&]|&[^;]*;){'.strlen($z[3]).'})(.*)~','\\1<b>\\2</b>',$z[2]).$z[4];return
- nl_br($F);}function
- exact_value($W){return
- q($W);}function
- create_database($j,$d){return
- queries("CREATE DATABASE ".idf_escape($j).($d?" ENCODING ".idf_escape($d):""));}function
- drop_databases($i){global$g;$g->close();return
- apply_queries("DROP DATABASE",$i,'idf_escape');}function
- rename_database($_,$d){return
- queries("ALTER DATABASE ".idf_escape(DB)." RENAME TO ".idf_escape($_));}function
- auto_increment(){return"";}function
- alter_table($N,$_,$m,$ic,$Xa,$Jb,$d,$Ba,$le){$c=array();$Fe=array();foreach($m
- as$l){$e=idf_escape($l[0]);$W=$l[1];if(!$W)$c[]="DROP $e";else{$lg=$W[5];unset($W[5]);if(isset($W[6])&&$l[0]=="")$W[1]=($W[1]=="bigint"?" big":" ")."serial";if($l[0]=="")$c[]=($N!=""?"ADD ":" ").implode($W);else{if($e!=$W[0])$Fe[]="ALTER TABLE ".table($N)." RENAME $e TO $W[0]";$c[]="ALTER $e TYPE$W[1]";if(!$W[6]){$c[]="ALTER $e ".($W[3]?"SET$W[3]":"DROP DEFAULT");$c[]="ALTER $e ".($W[2]==" NULL"?"DROP NOT":"SET").$W[2];}}if($l[0]!=""||$lg!="")$Fe[]="COMMENT ON COLUMN ".table($N).".$W[0] IS ".($lg!=""?substr($lg,9):"''");}}$c=array_merge($c,$ic);if($N=="")array_unshift($Fe,"CREATE TABLE ".table($_)." (\n".implode(",\n",$c)."\n)");elseif($c)array_unshift($Fe,"ALTER TABLE ".table($N)."\n".implode(",\n",$c));if($N!=""&&$N!=$_)$Fe[]="ALTER TABLE ".table($N)." RENAME TO ".table($_);if($N!=""||$Xa!="")$Fe[]="COMMENT ON TABLE ".table($_)." IS ".q($Xa);if($Ba!=""){}foreach($Fe
- as$D){if(!queries($D))return
- false;}return
- true;}function
- alter_indexes($N,$c){$gb=array();$yb=array();foreach($c
- as$W){if($W[0]!="INDEX")$gb[]=($W[2]=="DROP"?"\nDROP CONSTRAINT ".idf_escape($W[1]):"\nADD $W[0] ".($W[0]=="PRIMARY"?"KEY ":"").$W[2]);elseif($W[2]=="DROP")$yb[]=idf_escape($W[1]);elseif(!queries("CREATE INDEX ".idf_escape($W[1]!=""?$W[1]:uniqid($N."_"))." ON ".table($N)." $W[2]"))return
- false;}return((!$gb||queries("ALTER TABLE ".table($N).implode(",",$gb)))&&(!$yb||queries("DROP INDEX ".implode(", ",$yb))));}function
- truncate_tables($P){return
- queries("TRUNCATE ".implode(", ",array_map('table',$P)));return
- true;}function
- drop_views($Y){return
- queries("DROP VIEW ".implode(", ",array_map('table',$Y)));}function
- drop_tables($P){return
- queries("DROP TABLE ".implode(", ",array_map('table',$P)));}function
- move_tables($P,$Y,$Ef){foreach($P
- as$N){if(!queries("ALTER TABLE ".table($N)." SET SCHEMA ".idf_escape($Ef)))return
- false;}foreach($Y
- as$N){if(!queries("ALTER VIEW ".table($N)." SET SCHEMA ".idf_escape($Ef)))return
- false;}return
- true;}function
- trigger($_){if($_=="")return
- array("Statement"=>"EXECUTE PROCEDURE ()");$H=get_rows('SELECT trigger_name AS "Trigger", condition_timing AS "Timing", event_manipulation AS "Event", \'FOR EACH \' || action_orientation AS "Type", action_statement AS "Statement" FROM information_schema.triggers WHERE event_object_table = '.q($_GET["trigger"]).' AND trigger_name = '.q($_));return
- reset($H);}function
- triggers($N){$F=array();foreach(get_rows("SELECT * FROM information_schema.triggers WHERE event_object_table = ".q($N))as$G)$F[$G["trigger_name"]]=array($G["condition_timing"],$G["event_manipulation"]);return$F;}function
- trigger_options(){return
- array("Timing"=>array("BEFORE","AFTER"),"Type"=>array("FOR EACH ROW","FOR EACH STATEMENT"),);}function
- routines(){return
- get_rows('SELECT p.proname AS "ROUTINE_NAME", p.proargtypes AS "ROUTINE_TYPE", pg_catalog.format_type(p.prorettype, NULL) AS "DTD_IDENTIFIER"
- FROM pg_catalog.pg_namespace n
- JOIN pg_catalog.pg_proc p ON p.pronamespace = n.oid
- WHERE n.nspname = current_schema()
- ORDER BY p.proname');}function
- routine_languages(){return
- get_vals("SELECT langname FROM pg_catalog.pg_language");}function
- begin(){return
- queries("BEGIN");}function
- insert_into($N,$K){return
- queries("INSERT INTO ".table($N).($K?" (".implode(", ",array_keys($K)).")\nVALUES (".implode(", ",$K).")":"DEFAULT VALUES"));}function
- insert_update($N,$K,$xe){global$g;$gg=array();$Z=array();foreach($K
- as$v=>$W){$gg[]="$v = $W";if(isset($xe[idf_unescape($v)]))$Z[]="$v = $W";}return($Z&&queries("UPDATE ".table($N)." SET ".implode(", ",$gg)." WHERE ".implode(" AND ",$Z))&&$g->affected_rows)||queries("INSERT INTO ".table($N)." (".implode(", ",array_keys($K)).") VALUES (".implode(", ",$K).")");}function
- last_id(){return
- 0;}function
- explain($g,$D){return$g->query("EXPLAIN $D");}function
- found_rows($O,$Z){global$g;if(ereg(" rows=([0-9]+)",$g->result("EXPLAIN SELECT * FROM ".idf_escape($O["Name"]).($Z?" WHERE ".implode(" AND ",$Z):"")),$Ne))return$Ne[1];return
- false;}function
- types(){return
- get_vals("SELECT typname
- FROM pg_type
- WHERE typnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema())
- AND typtype IN ('b','d','e')
- AND typelem = 0");}function
- schemas(){return
- get_vals("SELECT nspname FROM pg_namespace ORDER BY nspname");}function
- get_schema(){global$g;return$g->result("SELECT current_schema()");}function
- set_schema($Ze){global$g,$T,$qf;$F=$g->query("SET search_path TO ".idf_escape($Ze));foreach(types()as$S){if(!isset($T[$S])){$T[$S]=0;$qf[lang(12)][]=$S;}}return$F;}function
- use_sql($nb){return"\connect ".idf_escape($nb);}function
- show_variables(){return
- get_key_vals("SHOW ALL");}function
- process_list(){return
- get_rows("SELECT * FROM pg_stat_activity ORDER BY procpid");}function
- show_status(){}function
- support($cc){return
- ereg('^(comment|view|scheme|processlist|sequence|trigger|type|variables|drop_col)$',$cc);}$u="pgsql";$T=array();$qf=array();foreach(array(lang(13)=>array("smallint"=>5,"integer"=>10,"bigint"=>19,"boolean"=>1,"numeric"=>0,"real"=>7,"double precision"=>16,"money"=>20),lang(14)=>array("date"=>13,"time"=>17,"timestamp"=>20,"interval"=>0),lang(15)=>array("character"=>0,"character varying"=>0,"text"=>0,"tsquery"=>0,"tsvector"=>0,"uuid"=>0,"xml"=>0),lang(16)=>array("bit"=>0,"bit varying"=>0,"bytea"=>0),lang(17)=>array("cidr"=>43,"inet"=>43,"macaddr"=>17,"txid_snapshot"=>0),lang(18)=>array("box"=>0,"circle"=>0,"line"=>0,"lseg"=>0,"path"=>0,"point"=>0,"polygon"=>0),)as$v=>$W){$T+=$W;$qf[$v]=array_keys($W);}$fg=array();$Pd=array("=","<",">","<=",">=","!=","~","!~","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL");$rc=array("char_length","lower","round","to_hex","to_timestamp","upper");$wc=array("avg","count","count distinct","max","min","sum");$Cb=array(array("char"=>"md5","date|time"=>"now",),array("int|numeric|real|money"=>"+/-","date|time"=>"+ interval/- interval","char|text"=>"||",));}$xb["oracle"]="Oracle";if(isset($_GET["oracle"])){$ue=array("OCI8","PDO_OCI");define("DRIVER","oracle");if(extension_loaded("oci8")){class
- Min_DB{var$extension="oci8",$_link,$_result,$server_info,$affected_rows,$error;function
- _error($Mb,$k){if(ini_bool("html_errors"))$k=html_entity_decode(strip_tags($k));$k=ereg_replace('^[^:]*: ','',$k);$this->error=$k;}function
- connect($J,$U,$B){$this->_link=@oci_new_connect($U,$B,$J,"AL32UTF8");if($this->_link){$this->server_info=oci_server_version($this->_link);return
- true;}$k=oci_error();$this->error=$k["message"];return
- false;}function
- quote($L){return"'".str_replace("'","''",$L)."'";}function
- select_db($nb){return
- true;}function
- query($D,$Zf=false){$E=oci_parse($this->_link,$D);$this->error="";if(!$E){$k=oci_error($this->_link);$this->error=$k["message"];return
- false;}set_error_handler(array($this,'_error'));$F=@oci_execute($E);restore_error_handler();if($F){if(oci_num_fields($E))return
- new
- Min_Result($E);$this->affected_rows=oci_num_rows($E);}return$F;}function
- multi_query($D){return$this->_result=$this->query($D);}function
- store_result(){return$this->_result;}function
- next_result(){return
- false;}function
- result($D,$l=1){$E=$this->query($D);if(!is_object($E)||!oci_fetch($E->_result))return
- false;return
- oci_result($E->_result,$l);}}class
- Min_Result{var$_result,$_offset=1,$num_rows;function
- Min_Result($E){$this->_result=$E;}function
- _convert($G){foreach((array)$G
- as$v=>$W){if(is_a($W,'OCI-Lob'))$G[$v]=$W->load();}return$G;}function
- fetch_assoc(){return$this->_convert(oci_fetch_assoc($this->_result));}function
- fetch_row(){return$this->_convert(oci_fetch_row($this->_result));}function
- fetch_field(){$e=$this->_offset++;$F=new
- stdClass;$F->name=oci_field_name($this->_result,$e);$F->orgname=$F->name;$F->type=oci_field_type($this->_result,$e);$F->charsetnr=(ereg("raw|blob|bfile",$F->type)?63:0);return$F;}function
- __destruct(){oci_free_statement($this->_result);}}}elseif(extension_loaded("pdo_oci")){class
- Min_DB
- extends
- Min_PDO{var$extension="PDO_OCI";function
- connect($J,$U,$B){$this->dsn("oci:dbname=//$J;charset=AL32UTF8",$U,$B);return
- true;}function
- select_db($nb){return
- true;}}}function
- idf_escape($r){return'"'.str_replace('"','""',$r).'"';}function
- table($r){return
- idf_escape($r);}function
- connect(){global$b;$g=new
- Min_DB;$jb=$b->credentials();if($g->connect($jb[0],$jb[1],$jb[2]))return$g;return$g->error;}function
- get_databases(){return
- get_vals("SELECT tablespace_name FROM user_tablespaces");}function
- limit($D,$Z,$x,$A=0,$ef=" "){return($A?" * FROM (SELECT t.*, rownum AS rnum FROM (SELECT $D$Z) t WHERE rownum <= ".($x+$A).") WHERE rnum > $A":($x!==null?" * FROM (SELECT $D$Z) WHERE rownum <= ".($x+$A):" $D$Z"));}function
- limit1($D,$Z){return" $D$Z";}function
- db_collation($j,$Ta){global$g;return$g->result("SELECT value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET'");}function
- engines(){return
- array();}function
- logged_user(){global$g;return$g->result("SELECT USER FROM DUAL");}function
- tables_list(){return
- get_key_vals("SELECT table_name, 'table' FROM all_tables WHERE tablespace_name = ".q(DB)."
- UNION SELECT view_name, 'view' FROM user_views");}function
- count_tables($i){return
- array();}function
- table_status($_=""){$F=array();$bf=q($_);foreach(get_rows('SELECT table_name "Name", \'table\' "Engine", avg_row_len * num_rows "Data_length", num_rows "Rows" FROM all_tables WHERE tablespace_name = '.q(DB).($_!=""?" AND table_name = $bf":"")."
- UNION SELECT view_name, 'view', 0, 0 FROM user_views".($_!=""?" WHERE view_name = $bf":""))as$G){if($_!="")return$G;$F[$G["Name"]]=$G;}return$F;}function
- is_view($O){return$O["Engine"]=="view";}function
- fk_support($O){return
- true;}function
- fields($N){$F=array();foreach(get_rows("SELECT * FROM all_tab_columns WHERE table_name = ".q($N)." ORDER BY column_id")as$G){$S=$G["DATA_TYPE"];$w="$G[DATA_PRECISION],$G[DATA_SCALE]";if($w==",")$w=$G["DATA_LENGTH"];$F[$G["COLUMN_NAME"]]=array("field"=>$G["COLUMN_NAME"],"full_type"=>$S.($w?"($w)":""),"type"=>strtolower($S),"length"=>$w,"default"=>$G["DATA_DEFAULT"],"null"=>($G["NULLABLE"]=="Y"),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),);}return$F;}function
- indexes($N,$h=null){$F=array();foreach(get_rows("SELECT uic.*, uc.constraint_type
- FROM user_ind_columns uic
- LEFT JOIN user_constraints uc ON uic.index_name = uc.constraint_name AND uic.table_name = uc.table_name
- WHERE uic.table_name = ".q($N)."
- ORDER BY uc.constraint_type, uic.column_position",$h)as$G){$F[$G["INDEX_NAME"]]["type"]=($G["CONSTRAINT_TYPE"]=="P"?"PRIMARY":($G["CONSTRAINT_TYPE"]=="U"?"UNIQUE":"INDEX"));$F[$G["INDEX_NAME"]]["columns"][]=$G["COLUMN_NAME"];$F[$G["INDEX_NAME"]]["lengths"][]=($G["CHAR_LENGTH"]&&$G["CHAR_LENGTH"]!=$G["COLUMN_LENGTH"]?$G["CHAR_LENGTH"]:null);}return$F;}function
- view($_){$H=get_rows('SELECT text "select" FROM user_views WHERE view_name = '.q($_));return
- reset($H);}function
- collations(){return
- array();}function
- information_schema($j){return
- false;}function
- error(){global$g;return
- h($g->error);}function
- exact_value($W){return
- q($W);}function
- explain($g,$D){$g->query("EXPLAIN PLAN FOR $D");return$g->query("SELECT * FROM plan_table");}function
- found_rows($O,$Z){}function
- alter_table($N,$_,$m,$ic,$Xa,$Jb,$d,$Ba,$le){$c=$yb=array();foreach($m
- as$l){$W=$l[1];if($W&&$l[0]!=""&&idf_escape($l[0])!=$W[0])queries("ALTER TABLE ".table($N)." RENAME COLUMN ".idf_escape($l[0])." TO $W[0]");if($W)$c[]=($N!=""?($l[0]!=""?"MODIFY (":"ADD ("):" ").implode($W).($N!=""?")":"");else$yb[]=idf_escape($l[0]);}if($N=="")return
- queries("CREATE TABLE ".table($_)." (\n".implode(",\n",$c)."\n)");return(!$c||queries("ALTER TABLE ".table($N)."\n".implode("\n",$c)))&&(!$yb||queries("ALTER TABLE ".table($N)." DROP (".implode(", ",$yb).")"))&&($N==$_||queries("ALTER TABLE ".table($N)." RENAME TO ".table($_)));}function
- foreign_keys($N){return
- array();}function
- truncate_tables($P){return
- apply_queries("TRUNCATE TABLE",$P);}function
- drop_views($Y){return
- apply_queries("DROP VIEW",$Y);}function
- drop_tables($P){return
- apply_queries("DROP TABLE",$P);}function
- begin(){return
- true;}function
- insert_into($N,$K){return
- queries("INSERT INTO ".table($N)." (".implode(", ",array_keys($K)).")\nVALUES (".implode(", ",$K).")");}function
- last_id(){return
- 0;}function
- schemas(){return
- get_vals("SELECT DISTINCT owner FROM dba_segments WHERE owner IN (SELECT username FROM dba_users WHERE default_tablespace NOT IN ('SYSTEM','SYSAUX'))");}function
- get_schema(){global$g;return$g->result("SELECT sys_context('USERENV', 'SESSION_USER') FROM dual");}function
- set_schema($af){global$g;return$g->query("ALTER SESSION SET CURRENT_SCHEMA = ".idf_escape($af));}function
- show_variables(){return
- get_key_vals('SELECT name, display_value FROM v$parameter');}function
- process_list(){return
- get_rows('SELECT sess.process AS "process", sess.username AS "user", sess.schemaname AS "schema", sess.status AS "status", sess.wait_class AS "wait_class", sess.seconds_in_wait AS "seconds_in_wait", sql.sql_text AS "sql_text", sess.machine AS "machine", sess.port AS "port"
- FROM v$session sess LEFT OUTER JOIN v$sql sql
- ON sql.sql_id = sess.sql_id
- WHERE sess.type = \'USER\'
- ORDER BY PROCESS
- ');}function
- show_status(){$H=get_rows('SELECT * FROM v$instance');return
- reset($H);}function
- support($cc){return
- ereg("view|scheme|processlist|drop_col|variables|status",$cc);}$u="oracle";$T=array();$qf=array();foreach(array(lang(13)=>array("number"=>38,"binary_float"=>12,"binary_double"=>21),lang(14)=>array("date"=>10,"timestamp"=>29,"interval year"=>12,"interval day"=>28),lang(15)=>array("char"=>2000,"varchar2"=>4000,"nchar"=>2000,"nvarchar2"=>4000,"clob"=>4294967295,"nclob"=>4294967295),lang(16)=>array("raw"=>2000,"long raw"=>2147483648,"blob"=>4294967295,"bfile"=>4294967296),)as$v=>$W){$T+=$W;$qf[$v]=array_keys($W);}$fg=array();$Pd=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","");$rc=array("length","lower","round","upper");$wc=array("avg","count","count distinct","max","min","sum");$Cb=array(array("date"=>"current_date","timestamp"=>"current_timestamp",),array("number|float|double"=>"+/-","date|timestamp"=>"+ interval/- interval","char|clob"=>"||",));}$xb["mssql"]="MS SQL";if(isset($_GET["mssql"])){$ue=array("SQLSRV","MSSQL");define("DRIVER","mssql");if(extension_loaded("sqlsrv")){class
- Min_DB{var$extension="sqlsrv",$_link,$_result,$server_info,$affected_rows,$error;function
- _get_error(){$this->error="";foreach(sqlsrv_errors()as$k)$this->error.="$k[message]\n";$this->error=rtrim($this->error);}function
- connect($J,$U,$B){$this->_link=@sqlsrv_connect($J,array("UID"=>$U,"PWD"=>$B,"CharacterSet"=>"UTF-8"));if($this->_link){$Gc=sqlsrv_server_info($this->_link);$this->server_info=$Gc['SQLServerVersion'];}else$this->_get_error();return(bool)$this->_link;}function
- quote($L){return"'".str_replace("'","''",$L)."'";}function
- select_db($nb){return$this->query("USE $nb");}function
- query($D,$Zf=false){$E=sqlsrv_query($this->_link,$D);$this->error="";if(!$E){$this->_get_error();return
- false;}return$this->store_result($E);}function
- multi_query($D){$this->_result=sqlsrv_query($this->_link,$D);$this->error="";if(!$this->_result){$this->_get_error();return
- false;}return
- true;}function
- store_result($E=null){if(!$E)$E=$this->_result;if(sqlsrv_field_metadata($E))return
- new
- Min_Result($E);$this->affected_rows=sqlsrv_rows_affected($E);return
- true;}function
- next_result(){return
- sqlsrv_next_result($this->_result);}function
- result($D,$l=0){$E=$this->query($D);if(!is_object($E))return
- false;$G=$E->fetch_row();return$G[$l];}}class
- Min_Result{var$_result,$_offset=0,$_fields,$num_rows;function
- Min_Result($E){$this->_result=$E;}function
- _convert($G){foreach((array)$G
- as$v=>$W){if(is_a($W,'DateTime'))$G[$v]=$W->format("Y-m-d H:i:s");}return$G;}function
- fetch_assoc(){return$this->_convert(sqlsrv_fetch_array($this->_result,SQLSRV_FETCH_ASSOC,SQLSRV_SCROLL_NEXT));}function
- fetch_row(){return$this->_convert(sqlsrv_fetch_array($this->_result,SQLSRV_FETCH_NUMERIC,SQLSRV_SCROLL_NEXT));}function
- fetch_field(){if(!$this->_fields)$this->_fields=sqlsrv_field_metadata($this->_result);$l=$this->_fields[$this->_offset++];$F=new
- stdClass;$F->name=$l["Name"];$F->orgname=$l["Name"];$F->type=($l["Type"]==1?254:0);return$F;}function
- seek($A){for($p=0;$p<$A;$p++)sqlsrv_fetch($this->_result);}function
- __destruct(){sqlsrv_free_stmt($this->_result);}}}elseif(extension_loaded("mssql")){class
- Min_DB{var$extension="MSSQL",$_link,$_result,$server_info,$affected_rows,$error;function
- connect($J,$U,$B){$this->_link=@mssql_connect($J,$U,$B);if($this->_link){$E=$this->query("SELECT SERVERPROPERTY('ProductLevel'), SERVERPROPERTY('Edition')");$G=$E->fetch_row();$this->server_info=$this->result("sp_server_info 2",2)." [$G[0]] $G[1]";}else$this->error=mssql_get_last_message();return(bool)$this->_link;}function
- quote($L){return"'".str_replace("'","''",$L)."'";}function
- select_db($nb){return
- mssql_select_db($nb);}function
- query($D,$Zf=false){$E=mssql_query($D,$this->_link);$this->error="";if(!$E){$this->error=mssql_get_last_message();return
- false;}if($E===true){$this->affected_rows=mssql_rows_affected($this->_link);return
- true;}return
- new
- Min_Result($E);}function
- multi_query($D){return$this->_result=$this->query($D);}function
- store_result(){return$this->_result;}function
- next_result(){return
- mssql_next_result($this->_result);}function
- result($D,$l=0){$E=$this->query($D);if(!is_object($E))return
- false;return
- mssql_result($E->_result,0,$l);}}class
- Min_Result{var$_result,$_offset=0,$_fields,$num_rows;function
- Min_Result($E){$this->_result=$E;$this->num_rows=mssql_num_rows($E);}function
- fetch_assoc(){return
- mssql_fetch_assoc($this->_result);}function
- fetch_row(){return
- mssql_fetch_row($this->_result);}function
- num_rows(){return
- mssql_num_rows($this->_result);}function
- fetch_field(){$F=mssql_fetch_field($this->_result);$F->orgtable=$F->table;$F->orgname=$F->name;return$F;}function
- seek($A){mssql_data_seek($this->_result,$A);}function
- __destruct(){mssql_free_result($this->_result);}}}function
- idf_escape($r){return"[".str_replace("]","]]",$r)."]";}function
- table($r){return($_GET["ns"]!=""?idf_escape($_GET["ns"]).".":"").idf_escape($r);}function
- connect(){global$b;$g=new
- Min_DB;$jb=$b->credentials();if($g->connect($jb[0],$jb[1],$jb[2]))return$g;return$g->error;}function
- get_databases(){return
- get_vals("EXEC sp_databases");}function
- limit($D,$Z,$x,$A=0,$ef=" "){return($x!==null?" TOP (".($x+$A).")":"")." $D$Z";}function
- limit1($D,$Z){return
- limit($D,$Z,1);}function
- db_collation($j,$Ta){global$g;return$g->result("SELECT collation_name FROM sys.databases WHERE name = ".q($j));}function
- engines(){return
- array();}function
- logged_user(){global$g;return$g->result("SELECT SUSER_NAME()");}function
- tables_list(){return
- get_key_vals("SELECT name, type_desc FROM sys.all_objects WHERE schema_id = SCHEMA_ID(".q(get_schema()).") AND type IN ('S', 'U', 'V') ORDER BY name");}function
- count_tables($i){global$g;$F=array();foreach($i
- as$j){$g->select_db($j);$F[$j]=$g->result("SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES");}return$F;}function
- table_status($_=""){$F=array();foreach(get_rows("SELECT name AS Name, type_desc AS Engine FROM sys.all_objects WHERE schema_id = SCHEMA_ID(".q(get_schema()).") AND type IN ('S', 'U', 'V')".($_!=""?" AND name = ".q($_):""))as$G){if($_!="")return$G;$F[$G["Name"]]=$G;}return$F;}function
- is_view($O){return$O["Engine"]=="VIEW";}function
- fk_support($O){return
- true;}function
- fields($N){$F=array();foreach(get_rows("SELECT c.*, t.name type, d.definition [default]
- FROM sys.all_columns c
- JOIN sys.all_objects o ON c.object_id = o.object_id
- JOIN sys.types t ON c.user_type_id = t.user_type_id
- LEFT JOIN sys.default_constraints d ON c.default_object_id = d.parent_column_id
- WHERE o.schema_id = SCHEMA_ID(".q(get_schema()).") AND o.type IN ('S', 'U', 'V') AND o.name = ".q($N))as$G){$S=$G["type"];$w=(ereg("char|binary",$S)?$G["max_length"]:($S=="decimal"?"$G[precision],$G[scale]":""));$F[$G["name"]]=array("field"=>$G["name"],"full_type"=>$S.($w?"($w)":""),"type"=>$S,"length"=>$w,"default"=>$G["default"],"null"=>$G["is_nullable"],"auto_increment"=>$G["is_identity"],"collation"=>$G["collation_name"],"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),"primary"=>$G["is_identity"],);}return$F;}function
- indexes($N,$h=null){$F=array();foreach(get_rows("SELECT i.name, key_ordinal, is_unique, is_primary_key, c.name AS column_name
- FROM sys.indexes i
- INNER JOIN sys.index_columns ic ON i.object_id = ic.object_id AND i.index_id = ic.index_id
- INNER JOIN sys.columns c ON ic.object_id = c.object_id AND ic.column_id = c.column_id
- WHERE OBJECT_NAME(i.object_id) = ".q($N),$h)as$G){$F[$G["name"]]["type"]=($G["is_primary_key"]?"PRIMARY":($G["is_unique"]?"UNIQUE":"INDEX"));$F[$G["name"]]["lengths"]=array();$F[$G["name"]]["columns"][$G["key_ordinal"]]=$G["column_name"];}return$F;}function
- view($_){global$g;return
- array("select"=>preg_replace('~^(?:[^[]|\\[[^]]*])*\\s+AS\\s+~isU','',$g->result("SELECT VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA = SCHEMA_NAME() AND TABLE_NAME = ".q($_))));}function
- collations(){$F=array();foreach(get_vals("SELECT name FROM fn_helpcollations()")as$d)$F[ereg_replace("_.*","",$d)][]=$d;return$F;}function
- information_schema($j){return
- false;}function
- error(){global$g;return
- nl_br(h(preg_replace('~^(\\[[^]]*])+~m','',$g->error)));}function
- exact_value($W){return
- q($W);}function
- create_database($j,$d){return
- queries("CREATE DATABASE ".idf_escape($j).(eregi('^[a-z0-9_]+$',$d)?" COLLATE $d":""));}function
- drop_databases($i){return
- queries("DROP DATABASE ".implode(", ",array_map('idf_escape',$i)));}function
- rename_database($_,$d){if(eregi('^[a-z0-9_]+$',$d))queries("ALTER DATABASE ".idf_escape(DB)." COLLATE $d");queries("ALTER DATABASE ".idf_escape(DB)." MODIFY NAME = ".idf_escape($_));return
- true;}function
- auto_increment(){return" IDENTITY".($_POST["Auto_increment"]!=""?"(".(+$_POST["Auto_increment"]).",1)":"")." PRIMARY KEY";}function
- alter_table($N,$_,$m,$ic,$Xa,$Jb,$d,$Ba,$le){$c=array();foreach($m
- as$l){$e=idf_escape($l[0]);$W=$l[1];if(!$W)$c["DROP"][]=" COLUMN $e";else{$W[1]=preg_replace("~( COLLATE )'(\\w+)'~","\\1\\2",$W[1]);if($l[0]=="")$c["ADD"][]="\n ".implode("",$W).($N==""?substr($ic[$W[0]],16+strlen($W[0])):"");else{unset($W[6]);if($e!=$W[0])queries("EXEC sp_rename ".q(table($N).".$e").", ".q(idf_unescape($W[0])).", 'COLUMN'");$c["ALTER COLUMN ".implode("",$W)][]="";}}}if($N=="")return
- queries("CREATE TABLE ".table($_)." (".implode(",",(array)$c["ADD"])."\n)");if($N!=$_)queries("EXEC sp_rename ".q(table($N)).", ".q($_));if($ic)$c[""]=$ic;foreach($c
- as$v=>$W){if(!queries("ALTER TABLE ".idf_escape($_)." $v".implode(",",$W)))return
- false;}return
- true;}function
- alter_indexes($N,$c){$s=array();$yb=array();foreach($c
- as$W){if($W[2]=="DROP"){if($W[0]=="PRIMARY")$yb[]=idf_escape($W[1]);else$s[]=idf_escape($W[1])." ON ".table($N);}elseif(!queries(($W[0]!="PRIMARY"?"CREATE $W[0] ".($W[0]!="INDEX"?"INDEX ":"").idf_escape($W[1]!=""?$W[1]:uniqid($N."_"))." ON ".table($N):"ALTER TABLE ".table($N)." ADD PRIMARY KEY")." $W[2]"))return
- false;}return(!$s||queries("DROP INDEX ".implode(", ",$s)))&&(!$yb||queries("ALTER TABLE ".table($N)." DROP ".implode(", ",$yb)));}function
- begin(){return
- queries("BEGIN TRANSACTION");}function
- insert_into($N,$K){return
- queries("INSERT INTO ".table($N).($K?" (".implode(", ",array_keys($K)).")\nVALUES (".implode(", ",$K).")":"DEFAULT VALUES"));}function
- insert_update($N,$K,$xe){$gg=array();$Z=array();foreach($K
- as$v=>$W){$gg[]="$v = $W";if(isset($xe[idf_unescape($v)]))$Z[]="$v = $W";}return
- queries("MERGE ".table($N)." USING (VALUES(".implode(", ",$K).")) AS source (c".implode(", c",range(1,count($K))).") ON ".implode(" AND ",$Z)." WHEN MATCHED THEN UPDATE SET ".implode(", ",$gg)." WHEN NOT MATCHED THEN INSERT (".implode(", ",array_keys($K)).") VALUES (".implode(", ",$K).");");}function
- last_id(){global$g;return$g->result("SELECT SCOPE_IDENTITY()");}function
- explain($g,$D){$g->query("SET SHOWPLAN_ALL ON");$F=$g->query($D);$g->query("SET SHOWPLAN_ALL OFF");return$F;}function
- found_rows($O,$Z){}function
- foreign_keys($N){$F=array();foreach(get_rows("EXEC sp_fkeys @fktable_name = ".q($N))as$G){$n=&$F[$G["FK_NAME"]];$n["table"]=$G["PKTABLE_NAME"];$n["source"][]=$G["FKCOLUMN_NAME"];$n["target"][]=$G["PKCOLUMN_NAME"];}return$F;}function
- truncate_tables($P){return
- apply_queries("TRUNCATE TABLE",$P);}function
- drop_views($Y){return
- queries("DROP VIEW ".implode(", ",array_map('table',$Y)));}function
- drop_tables($P){return
- queries("DROP TABLE ".implode(", ",array_map('table',$P)));}function
- move_tables($P,$Y,$Ef){return
- apply_queries("ALTER SCHEMA ".idf_escape($Ef)." TRANSFER",array_merge($P,$Y));}function
- trigger($_){if($_=="")return
- array();$H=get_rows("SELECT s.name [Trigger],
- CASE WHEN OBJECTPROPERTY(s.id, 'ExecIsInsertTrigger') = 1 THEN 'INSERT' WHEN OBJECTPROPERTY(s.id, 'ExecIsUpdateTrigger') = 1 THEN 'UPDATE' WHEN OBJECTPROPERTY(s.id, 'ExecIsDeleteTrigger') = 1 THEN 'DELETE' END [Event],
- CASE WHEN OBJECTPROPERTY(s.id, 'ExecIsInsteadOfTrigger') = 1 THEN 'INSTEAD OF' ELSE 'AFTER' END [Timing],
- c.text
- FROM sysobjects s
- JOIN syscomments c ON s.id = c.id
- WHERE s.xtype = 'TR' AND s.name = ".q($_));$F=reset($H);if($F)$F["Statement"]=preg_replace('~^.+\\s+AS\\s+~isU','',$F["text"]);return$F;}function
- triggers($N){$F=array();foreach(get_rows("SELECT sys1.name,
- CASE WHEN OBJECTPROPERTY(sys1.id, 'ExecIsInsertTrigger') = 1 THEN 'INSERT' WHEN OBJECTPROPERTY(sys1.id, 'ExecIsUpdateTrigger') = 1 THEN 'UPDATE' WHEN OBJECTPROPERTY(sys1.id, 'ExecIsDeleteTrigger') = 1 THEN 'DELETE' END [Event],
- CASE WHEN OBJECTPROPERTY(sys1.id, 'ExecIsInsteadOfTrigger') = 1 THEN 'INSTEAD OF' ELSE 'AFTER' END [Timing]
- FROM sysobjects sys1
- JOIN sysobjects sys2 ON sys1.parent_obj = sys2.id
- WHERE sys1.xtype = 'TR' AND sys2.name = ".q($N))as$G)$F[$G["name"]]=array($G["Timing"],$G["Event"]);return$F;}function
- trigger_options(){return
- array("Timing"=>array("AFTER","INSTEAD OF"),"Type"=>array("AS"),);}function
- schemas(){return
- get_vals("SELECT name FROM sys.schemas");}function
- get_schema(){global$g;if($_GET["ns"]!="")return$_GET["ns"];return$g->result("SELECT SCHEMA_NAME()");}function
- set_schema($Ze){return
- true;}function
- use_sql($nb){return"USE ".idf_escape($nb);}function
- show_variables(){return
- array();}function
- show_status(){return
- array();}function
- support($cc){return
- ereg('^(scheme|trigger|view|drop_col)$',$cc);}$u="mssql";$T=array();$qf=array();foreach(array(lang(13)=>array("tinyint"=>3,"smallint"=>5,"int"=>10,"bigint"=>20,"bit"=>1,"decimal"=>0,"real"=>12,"float"=>53,"smallmoney"=>10,"money"=>20),lang(14)=>array("date"=>10,"smalldatetime"=>19,"datetime"=>19,"datetime2"=>19,"time"=>8,"datetimeoffset"=>10),lang(15)=>array("char"=>8000,"varchar"=>8000,"text"=>2147483647,"nchar"=>4000,"nvarchar"=>4000,"ntext"=>1073741823),lang(16)=>array("binary"=>8000,"varbinary"=>8000,"image"=>2147483647),)as$v=>$W){$T+=$W;$qf[$v]=array_keys($W);}$fg=array();$Pd=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL");$rc=array("len","lower","round","upper");$wc=array("avg","count","count distinct","max","min","sum");$Cb=array(array("date|time"=>"getdate",),array("int|decimal|real|float|money|datetime"=>"+/-","char|text"=>"+",));}$xb=array("server"=>"MySQL")+$xb;if(!defined("DRIVER")){$ue=array("MySQLi","MySQL","PDO_MySQL");define("DRIVER","server");if(extension_loaded("mysqli")){class
- Min_DB
- extends
- MySQLi{var$extension="MySQLi";function
- Min_DB(){parent::init();}function
- connect($J,$U,$B){mysqli_report(MYSQLI_REPORT_OFF);list($_c,$qe)=explode(":",$J,2);$F=@$this->real_connect(($J!=""?$_c:ini_get("mysqli.default_host")),($J.$U!=""?$U:ini_get("mysqli.default_user")),($J.$U.$B!=""?$B:ini_get("mysqli.default_pw")),null,(is_numeric($qe)?$qe:ini_get("mysqli.default_port")),(!is_numeric($qe)?$qe:null));if($F){if(method_exists($this,'set_charset'))$this->set_charset("utf8");else$this->query("SET NAMES utf8");}return$F;}function
- result($D,$l=0){$E=$this->query($D);if(!$E)return
- false;$G=$E->fetch_array();return$G[$l];}function
- quote($L){return"'".$this->escape_string($L)."'";}}}elseif(extension_loaded("mysql")&&!(ini_get("sql.safe_mode")&&extension_loaded("pdo_mysql"))){class
- Min_DB{var$extension="MySQL",$server_info,$affected_rows,$error,$_link,$_result;function
- connect($J,$U,$B){$this->_link=@mysql_connect(($J!=""?$J:ini_get("mysql.default_host")),("$J$U"!=""?$U:ini_get("mysql.default_user")),("$J$U$B"!=""?$B:ini_get("mysql.default_password")),true,131072);if($this->_link){$this->server_info=mysql_get_server_info($this->_link);if(function_exists('mysql_set_charset'))mysql_set_charset("utf8",$this->_link);else$this->query("SET NAMES utf8");}else$this->error=mysql_error();return(bool)$this->_link;}function
- quote($L){return"'".mysql_real_escape_string($L,$this->_link)."'";}function
- select_db($nb){return
- mysql_select_db($nb,$this->_link);}function
- query($D,$Zf=false){$E=@($Zf?mysql_unbuffered_query($D,$this->_link):mysql_query($D,$this->_link));$this->error="";if(!$E){$this->error=mysql_error($this->_link);return
- false;}if($E===true){$this->affected_rows=mysql_affected_rows($this->_link);$this->info=mysql_info($this->_link);return
- true;}return
- new
- Min_Result($E);}function
- multi_query($D){return$this->_result=$this->query($D);}function
- store_result(){return$this->_result;}function
- next_result(){return
- false;}function
- result($D,$l=0){$E=$this->query($D);if(!$E||!$E->num_rows)return
- false;return
- mysql_result($E->_result,0,$l);}}class
- Min_Result{var$num_rows,$_result,$_offset=0;function
- Min_Result($E){$this->_result=$E;$this->num_rows=mysql_num_rows($E);}function
- fetch_assoc(){return
- mysql_fetch_assoc($this->_result);}function
- fetch_row(){return
- mysql_fetch_row($this->_result);}function
- fetch_field(){$F=mysql_fetch_field($this->_result,$this->_offset++);$F->orgtable=$F->table;$F->orgname=$F->name;$F->charsetnr=($F->blob?63:0);return$F;}function
- __destruct(){mysql_free_result($this->_result);}}}elseif(extension_loaded("pdo_mysql")){class
- Min_DB
- extends
- Min_PDO{var$extension="PDO_MySQL";function
- connect($J,$U,$B){$this->dsn("mysql:host=".str_replace(":",";unix_socket=",preg_replace('~:(\\d)~',';port=\\1',$J)),$U,$B);$this->query("SET NAMES utf8");return
- true;}function
- select_db($nb){return$this->query("USE ".idf_escape($nb));}function
- query($D,$Zf=false){$this->setAttribute(1000,!$Zf);return
- parent::query($D,$Zf);}}}function
- idf_escape($r){return"`".str_replace("`","``",$r)."`";}function
- table($r){return
- idf_escape($r);}function
- connect(){global$b;$g=new
- Min_DB;$jb=$b->credentials();if($g->connect($jb[0],$jb[1],$jb[2])){$g->query("SET sql_quote_show_create = 1, autocommit = 1");return$g;}$F=$g->error;if(function_exists('iconv')&&!is_utf8($F)&&strlen($Xe=iconv("windows-1250","utf-8",$F))>strlen($F))$F=$Xe;return$F;}function
- get_databases($hc=true){global$g;$F=&get_session("dbs");if($F===null){if($hc){restart_session();ob_flush();flush();}$F=get_vals($g->server_info>=5?"SELECT SCHEMA_NAME FROM information_schema.SCHEMATA":"SHOW DATABASES");}return$F;}function
- limit($D,$Z,$x,$A=0,$ef=" "){return" $D$Z".($x!==null?$ef."LIMIT $x".($A?" OFFSET $A":""):"");}function
- limit1($D,$Z){return
- limit($D,$Z,1);}function
- db_collation($j,$Ta){global$g;$F=null;$gb=$g->result("SHOW CREATE DATABASE ".idf_escape($j),1);if(preg_match('~ COLLATE ([^ ]+)~',$gb,$z))$F=$z[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$gb,$z))$F=$Ta[$z[1]][-1];return$F;}function
- engines(){$F=array();foreach(get_rows("SHOW ENGINES")as$G){if(ereg("YES|DEFAULT",$G["Support"]))$F[]=$G["Engine"];}return$F;}function
- logged_user(){global$g;return$g->result("SELECT USER()");}function
- tables_list(){global$g;return
- get_key_vals("SHOW".($g->server_info>=5?" FULL":"")." TABLES");}function
- count_tables($i){$F=array();foreach($i
- as$j)$F[$j]=count(get_vals("SHOW TABLES IN ".idf_escape($j)));return$F;}function
- table_status($_=""){$F=array();foreach(get_rows("SHOW TABLE STATUS".($_!=""?" LIKE ".q(addcslashes($_,"%_")):""))as$G){if($G["Engine"]=="InnoDB")$G["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\\1',$G["Comment"]);if(!isset($G["Rows"]))$G["Comment"]="";if($_!="")return$G;$F[$G["Name"]]=$G;}return$F;}function
- is_view($O){return!isset($O["Rows"]);}function
- fk_support($O){return
- eregi("InnoDB|IBMDB2I",$O["Engine"]);}function
- fields($N){$F=array();foreach(get_rows("SHOW FULL COLUMNS FROM ".table($N))as$G){preg_match('~^([^( ]+)(?:\\((.+)\\))?( unsigned)?( zerofill)?$~',$G["Type"],$z);$F[$G["Field"]]=array("field"=>$G["Field"],"full_type"=>$G["Type"],"type"=>$z[1],"length"=>$z[2],"unsigned"=>ltrim($z[3].$z[4]),"default"=>($G["Default"]!=""||ereg("char",$z[1])?$G["Default"]:null),"null"=>($G["Null"]=="YES"),"auto_increment"=>($G["Extra"]=="auto_increment"),"on_update"=>(eregi('^on update (.+)',$G["Extra"],$z)?$z[1]:""),"collation"=>$G["Collation"],"privileges"=>array_flip(explode(",",$G["Privileges"])),"comment"=>$G["Comment"],"primary"=>($G["Key"]=="PRI"),);}return$F;}function
- indexes($N,$h=null){$F=array();foreach(get_rows("SHOW INDEX FROM ".table($N),$h)as$G){$F[$G["Key_name"]]["type"]=($G["Key_name"]=="PRIMARY"?"PRIMARY":($G["Index_type"]=="FULLTEXT"?"FULLTEXT":($G["Non_unique"]?"INDEX":"UNIQUE")));$F[$G["Key_name"]]["columns"][]=$G["Column_name"];$F[$G["Key_name"]]["lengths"][]=$G["Sub_part"];}return$F;}function
- foreign_keys($N){global$g,$Ld;static$oe='`(?:[^`]|``)+`';$F=array();$hb=$g->result("SHOW CREATE TABLE ".table($N),1);if($hb){preg_match_all("~CONSTRAINT ($oe) FOREIGN KEY \\(((?:$oe,? ?)+)\\) REFERENCES ($oe)(?:\\.($oe))? \\(((?:$oe,? ?)+)\\)(?: ON DELETE ($Ld))?(?: ON UPDATE ($Ld))?~",$hb,$jd,PREG_SET_ORDER);foreach($jd
- as$z){preg_match_all("~$oe~",$z[2],$jf);preg_match_all("~$oe~",$z[5],$Ef);$F[idf_unescape($z[1])]=array("db"=>idf_unescape($z[4]!=""?$z[3]:$z[4]),"table"=>idf_unescape($z[4]!=""?$z[4]:$z[3]),"source"=>array_map('idf_unescape',$jf[0]),"target"=>array_map('idf_unescape',$Ef[0]),"on_delete"=>($z[6]?$z[6]:"RESTRICT"),"on_update"=>($z[7]?$z[7]:"RESTRICT"),);}}return$F;}function
- view($_){global$g;return
- array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\\s+AS\\s+~isU','',$g->result("SHOW CREATE VIEW ".table($_),1)));}function
- collations(){$F=array();foreach(get_rows("SHOW COLLATION")as$G){if($G["Default"])$F[$G["Charset"]][-1]=$G["Collation"];else$F[$G["Charset"]][]=$G["Collation"];}ksort($F);foreach($F
- as$v=>$W)asort($F[$v]);return$F;}function
- information_schema($j){global$g;return($g->server_info>=5&&$j=="information_schema");}function
- error(){global$g;return
- h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",$g->error));}function
- error_line(){global$g;if(ereg(' at line ([0-9]+)$',$g->error,$Ne))return$Ne[1]-1;}function
- exact_value($W){return
- q($W)." COLLATE utf8_bin";}function
- create_database($j,$d){set_session("dbs",null);return
- queries("CREATE DATABASE ".idf_escape($j).($d?" COLLATE ".q($d):""));}function
- drop_databases($i){set_session("dbs",null);return
- apply_queries("DROP DATABASE",$i,'idf_escape');}function
- rename_database($_,$d){if(create_database($_,$d)){$Oe=array();foreach(tables_list()as$N=>$S)$Oe[]=table($N)." TO ".idf_escape($_).".".table($N);if(!$Oe||queries("RENAME TABLE ".implode(", ",$Oe))){queries("DROP DATABASE ".idf_escape(DB));return
- true;}}return
- false;}function
- auto_increment(){$Ca=" PRIMARY KEY";if($_GET["create"]!=""&&$_POST["auto_increment_col"]){foreach(indexes($_GET["create"])as$s){if(in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"],$s["columns"],true)){$Ca="";break;}if($s["type"]=="PRIMARY")$Ca=" UNIQUE";}}return" AUTO_INCREMENT$Ca";}function
- alter_table($N,$_,$m,$ic,$Xa,$Jb,$d,$Ba,$le){$c=array();foreach($m
- as$l)$c[]=($l[1]?($N!=""?($l[0]!=""?"CHANGE ".idf_escape($l[0]):"ADD"):" ")." ".implode($l[1]).($N!=""?$l[2]:""):"DROP ".idf_escape($l[0]));$c=array_merge($c,$ic);$nf="COMMENT=".q($Xa).($Jb?" ENGINE=".q($Jb):"").($d?" COLLATE ".q($d):"").($Ba!=""?" AUTO_INCREMENT=$Ba":"").$le;if($N=="")return
- queries("CREATE TABLE ".table($_)." (\n".implode(",\n",$c)."\n) $nf");if($N!=$_)$c[]="RENAME TO ".table($_);$c[]=$nf;return
- queries("ALTER TABLE ".table($N)."\n".implode(",\n",$c));}function
- alter_indexes($N,$c){foreach($c
- as$v=>$W)$c[$v]=($W[2]=="DROP"?"\nDROP INDEX ".idf_escape($W[1]):"\nADD $W[0] ".($W[0]=="PRIMARY"?"KEY ":"").($W[1]!=""?idf_escape($W[1])." ":"").$W[2]);return
- queries("ALTER TABLE ".table($N).implode(",",$c));}function
- truncate_tables($P){return
- apply_queries("TRUNCATE TABLE",$P);}function
- drop_views($Y){return
- queries("DROP VIEW ".implode(", ",array_map('table',$Y)));}function
- drop_tables($P){return
- queries("DROP TABLE ".implode(", ",array_map('table',$P)));}function
- move_tables($P,$Y,$Ef){$Oe=array();foreach(array_merge($P,$Y)as$N)$Oe[]=table($N)." TO ".idf_escape($Ef).".".table($N);return
- queries("RENAME TABLE ".implode(", ",$Oe));}function
- copy_tables($P,$Y,$Ef){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($P
- as$N){$_=($Ef==DB?table("copy_$N"):idf_escape($Ef).".".table($N));if(!queries("DROP TABLE IF EXISTS $_")||!queries("CREATE TABLE $_ LIKE ".table($N))||!queries("INSERT INTO $_ SELECT * FROM ".table($N)))return
- false;}foreach($Y
- as$N){$_=($Ef==DB?table("copy_$N"):idf_escape($Ef).".".table($N));$og=view($N);if(!queries("DROP VIEW IF EXISTS $_")||!queries("CREATE VIEW $_ AS $og[select]"))return
- false;}return
- true;}function
- trigger($_){if($_=="")return
- array();$H=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($_));return
- reset($H);}function
- triggers($N){$F=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($N,"%_")))as$G)$F[$G["Trigger"]]=array($G["Timing"],$G["Event"]);return$F;}function
- trigger_options(){return
- array("Timing"=>array("BEFORE","AFTER"),"Type"=>array("FOR EACH ROW"),);}function
- routine($_,$S){global$g,$Lb,$Ic,$T;$va=array("bool","boolean","integer","double precision","real","dec","numeric","fixed","national char","national varchar");$Yf="((".implode("|",array_merge(array_keys($T),$va)).")\\b(?:\\s*\\(((?:[^'\")]*|$Lb)+)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s]+)['\"]?)?";$oe="\\s*(".($S=="FUNCTION"?"":$Ic).")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$Yf";$gb=$g->result("SHOW CREATE $S ".idf_escape($_),2);preg_match("~\\(((?:$oe\\s*,?)*)\\)\\s*".($S=="FUNCTION"?"RETURNS\\s+$Yf\\s+":"")."(.*)~is",$gb,$z);$m=array();preg_match_all("~$oe\\s*,?~is",$z[1],$jd,PREG_SET_ORDER);foreach($jd
- as$ge){$_=str_replace("``","`",$ge[2]).$ge[3];$m[]=array("field"=>$_,"type"=>strtolower($ge[5]),"length"=>preg_replace_callback("~$Lb~s",'normalize_enum',$ge[6]),"unsigned"=>strtolower(preg_replace('~\\s+~',' ',trim("$ge[8] $ge[7]"))),"full_type"=>$ge[4],"inout"=>strtoupper($ge[1]),"collation"=>strtolower($ge[9]),);}if($S!="FUNCTION")return
- array("fields"=>$m,"definition"=>$z[11]);return
- array("fields"=>$m,"returns"=>array("type"=>$z[12],"length"=>$z[13],"unsigned"=>$z[15],"collation"=>$z[16]),"definition"=>$z[17],"language"=>"SQL",);}function
- routines(){return
- get_rows("SELECT * FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = ".q(DB));}function
- routine_languages(){return
- array();}function
- begin(){return
- queries("BEGIN");}function
- insert_into($N,$K){return
- queries("INSERT INTO ".table($N)." (".implode(", ",array_keys($K)).")\nVALUES (".implode(", ",$K).")");}function
- insert_update($N,$K,$xe){foreach($K
- as$v=>$W)$K[$v]="$v = $W";$gg=implode(", ",$K);return
- queries("INSERT INTO ".table($N)." SET $gg ON DUPLICATE KEY UPDATE $gg");}function
- last_id(){global$g;return$g->result("SELECT LAST_INSERT_ID()");}function
- explain($g,$D){return$g->query("EXPLAIN $D");}function
- found_rows($O,$Z){return($Z||$O["Engine"]!="InnoDB"?null:$O["Rows"]);}function
- types(){return
- array();}function
- schemas(){return
- array();}function
- get_schema(){return"";}function
- set_schema($Ze){return
- true;}function
- create_sql($N,$Ba){global$g;$F=$g->result("SHOW CREATE TABLE ".table($N),1);if(!$Ba)$F=preg_replace('~ AUTO_INCREMENT=\\d+~','',$F);return$F;}function
- truncate_sql($N){return"TRUNCATE ".table($N);}function
- use_sql($nb){return"USE ".idf_escape($nb);}function
- trigger_sql($N,$M){$F="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($N,"%_")),null,"-- ")as$G)$F.="\n".($M=='CREATE+ALTER'?"DROP TRIGGER IF EXISTS ".idf_escape($G["Trigger"]).";;\n":"")."CREATE TRIGGER ".idf_escape($G["Trigger"])." $G[Timing] $G[Event] ON ".table($G["Table"])." FOR EACH ROW\n$G[Statement];;\n";return$F;}function
- show_variables(){return
- get_key_vals("SHOW VARIABLES");}function
- process_list(){return
- get_rows("SHOW FULL PROCESSLIST");}function
- show_status(){return
- get_key_vals("SHOW STATUS");}function
- support($cc){global$g;return!ereg("scheme|sequence|type".($g->server_info<5.1?"|event|partitioning".($g->server_info<5?"|view|routine|trigger":""):""),$cc);}$u="sql";$T=array();$qf=array();foreach(array(lang(13)=>array("tinyint"=>3,"smallint"=>5,"mediumint"=>8,"int"=>10,"bigint"=>20,"decimal"=>66,"float"=>12,"double"=>21),lang(14)=>array("date"=>10,"datetime"=>19,"timestamp"=>19,"time"=>10,"year"=>4),lang(15)=>array("char"=>255,"varchar"=>65535,"tinytext"=>255,"text"=>65535,"mediumtext"=>16777215,"longtext"=>4294967295),lang(16)=>array("bit"=>20,"binary"=>255,"varbinary"=>65535,"tinyblob"=>255,"blob"=>65535,"mediumblob"=>16777215,"longblob"=>4294967295),lang(19)=>array("enum"=>65535,"set"=>64),)as$v=>$W){$T+=$W;$qf[$v]=array_keys($W);}$fg=array("unsigned","zerofill","unsigned zerofill");$Pd=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","");$rc=array("char_length","date","from_unixtime","hex","lower","round","sec_to_time","time_to_sec","upper");$wc=array("avg","count","count distinct","group_concat","max","min","sum");$Cb=array(array("char"=>"md5/sha1/password/encrypt/uuid","binary"=>"md5/sha1/hex","date|time"=>"now",),array("int|float|double|decimal"=>"+/-","date"=>"+ interval/- interval","time"=>"addtime/subtime","char|text"=>"concat",));}define("SERVER",$_GET[DRIVER]);define("DB",$_GET["db"]);define("ME",preg_replace('~^[^?]*/([^?]*).*~','\\1',$_SERVER["REQUEST_URI"]).'?'.(sid()?SID.'&':'').(SERVER!==null?DRIVER."=".urlencode(SERVER).'&':'').(isset($_GET["username"])?"username=".urlencode($_GET["username"]).'&':'').(DB!=""?'db='.urlencode(DB).'&'.(isset($_GET["ns"])?"ns=".urlencode($_GET["ns"])."&":""):''));$ia="3.5.1";class
- Adminer{var$operators;function
- name(){return"<a href='http://www.adminer.org/' id='h1'>Adminer</a>";}function
- credentials(){return
- array(SERVER,$_GET["username"],get_session("pwds"));}function
- permanentLogin(){return
- password_file();}function
- database(){return
- DB;}function
- databases($hc=true){return
- get_databases($hc);}function
- headers(){return
- true;}function
- head(){return
- true;}function
- loginForm(){global$xb;echo'<table cellspacing="0">
- <tr><th>',lang(20),'<td>',html_select("auth[driver]",$xb,DRIVER,"loginDriver(this);"),'<tr><th>',lang(21),'<td><input name="auth[server]" value="',h(SERVER),'" title="hostname[:port]">
- <tr><th>',lang(22),'<td><input id="username" name="auth[username]" value="',h($_GET["username"]),'">
- <tr><th>',lang(23),'<td><input type="password" name="auth[password]">
- <tr><th>',lang(24),'<td><input name="auth[db]" value="',h($_GET["db"]);?>">
- </table>
- <script type="text/javascript">
- var username = document.getElementById('username');
- username.focus();
- username.form['auth[driver]'].onchange();
- </script>
- <?php
- echo"<p><input type='submit' value='".lang(25)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(26))."\n";}function
- login($gd,$B){return
- true;}function
- tableName($xf){return
- h($xf["Name"]);}function
- fieldName($l,$Td=0){return'<span title="'.h($l["full_type"]).'">'.h($l["field"]).'</span>';}function
- selectLinks($xf,$K=""){echo'<p class="tabs">';$ed=array("select"=>lang(27),"table"=>lang(28));if(is_view($xf))$ed["view"]=lang(29);else$ed["create"]=lang(30);if($K!==null)$ed["edit"]=lang(31);foreach($ed
- as$v=>$W)echo" <a href='".h(ME)."$v=".urlencode($xf["Name"]).($v=="edit"?$K:"")."'".bold(isset($_GET[$v])).">$W</a>";echo"\n";}function
- foreignKeys($N){return
- foreign_keys($N);}function
- backwardKeys($N,$wf){return
- array();}function
- backwardKeysPrint($Ea,$G){}function
- selectQuery($D){global$u;return"<p><a href='".h(remove_from_uri("page"))."&page=last' title='".lang(32)."'>>></a> <code class='jush-$u'>".h(str_replace("\n"," ",$D))."</code> <a href='".h(ME)."sql=".urlencode($D)."'>".lang(33)."</a></p>\n";}function
- rowDescription($N){return"";}function
- rowDescriptions($H,$jc){return$H;}function
- selectVal($W,$y,$l){$F=($W===null?"<i>NULL</i>":(ereg("char|binary",$l["type"])&&!ereg("var",$l["type"])?"<code>$W</code>":$W));if(ereg('blob|bytea|raw|file',$l["type"])&&!is_utf8($W))$F=lang(34,strlen($W));return($y?"<a href='$y'>$F</a>":$F);}function
- editVal($W,$l){return(ereg("binary",$l["type"])?reset(unpack("H*",$W)):$W);}function
- selectColumnsPrint($I,$f){global$rc,$wc;print_fieldset("select",lang(35),$I);$p=0;$qc=array(lang(36)=>$rc,lang(37)=>$wc);foreach($I
- as$v=>$W){$W=$_GET["columns"][$v];echo"<div>".html_select("columns[$p][fun]",array(-1=>"")+$qc,$W["fun"]),"(<select name='columns[$p][col]' onchange='selectFieldChange(this.form);'><option>".optionlist($f,$W["col"],true)."</select>)</div>\n";$p++;}echo"<div>".html_select("columns[$p][fun]",array(-1=>"")+$qc,"","this.nextSibling.nextSibling.onchange();"),"(<select name='columns[$p][col]' onchange='selectAddRow(this);'><option>".optionlist($f,null,true)."</select>)</div>\n","</div></fieldset>\n";}function
- selectSearchPrint($Z,$f,$t){print_fieldset("search",lang(38),$Z);foreach($t
- as$p=>$s){if($s["type"]=="FULLTEXT"){echo"(<i>".implode("</i>, <i>",array_map('h',$s["columns"]))."</i>) AGAINST"," <input name='fulltext[$p]' value='".h($_GET["fulltext"][$p])."' onchange='selectFieldChange(this.form);'>",checkbox("boolean[$p]",1,isset($_GET["boolean"][$p]),"BOOL"),"<br>\n";}}$_GET["where"]=(array)$_GET["where"];reset($_GET["where"]);$Ma="this.nextSibling.onchange();";for($p=0;$p<=count($_GET["where"]);$p++){list(,$W)=each($_GET["where"]);if(!$W||("$W[col]$W[val]"!=""&&in_array($W["op"],$this->operators))){echo"<div><select name='where[$p][col]' onchange='$Ma'><option value=''>(".lang(39).")".optionlist($f,$W["col"],true)."</select>",html_select("where[$p][op]",$this->operators,$W["op"],$Ma),"<input name='where[$p][val]' value='".h($W["val"])."' onchange='".($W?"selectFieldChange(this.form)":"selectAddRow(this)").";'></div>\n";}}echo"</div></fieldset>\n";}function
- selectOrderPrint($Td,$f,$t){print_fieldset("sort",lang(40),$Td);$p=0;foreach((array)$_GET["order"]as$v=>$W){if(isset($f[$W])){echo"<div><select name='order[$p]' onchange='selectFieldChange(this.form);'><option>".optionlist($f,$W,true)."</select>",checkbox("desc[$p]",1,isset($_GET["desc"][$v]),lang(41))."</div>\n";$p++;}}echo"<div><select name='order[$p]' onchange='selectAddRow(this);'><option>".optionlist($f,null,true)."</select>","<label><input type='checkbox' name='desc[$p]' value='1'>".lang(41)."</label></div>\n";echo"</div></fieldset>\n";}function
- selectLimitPrint($x){echo"<fieldset><legend>".lang(42)."</legend><div>";echo"<input name='limit' size='3' value='".h($x)."' onchange='selectFieldChange(this.form);'>","</div></fieldset>\n";}function
- selectLengthPrint($Hf){if($Hf!==null){echo"<fieldset><legend>".lang(43)."</legend><div>",'<input name="text_length" size="3" value="'.h($Hf).'">',"</div></fieldset>\n";}}function
- selectActionPrint($t){echo"<fieldset><legend>".lang(44)."</legend><div>","<input type='submit' value='".lang(35)."'>"," <span id='noindex' title='".lang(45)."'></span>","<script type='text/javascript'>\n","var indexColumns = ";$f=array();foreach($t
- as$s){if($s["type"]!="FULLTEXT")$f[reset($s["columns"])]=1;}$f[""]=1;foreach($f
- as$v=>$W)json_row($v);echo";\n","selectFieldChange(document.getElementById('form'));\n","</script>\n","</div></fieldset>\n";}function
- selectCommandPrint(){return!information_schema(DB);}function
- selectImportPrint(){return
- true;}function
- selectEmailPrint($Fb,$f){}function
- selectColumnsProcess($f,$t){global$rc,$wc;$I=array();$uc=array();foreach((array)$_GET["columns"]as$v=>$W){if($W["fun"]=="count"||(isset($f[$W["col"]])&&(!$W["fun"]||in_array($W["fun"],$rc)||in_array($W["fun"],$wc)))){$I[$v]=apply_sql_function($W["fun"],(isset($f[$W["col"]])?idf_escape($W["col"]):"*"));if(!in_array($W["fun"],$wc))$uc[]=$I[$v];}}return
- array($I,$uc);}function
- selectSearchProcess($m,$t){global$u;$F=array();foreach($t
- as$p=>$s){if($s["type"]=="FULLTEXT"&&$_GET["fulltext"][$p]!="")$F[]="MATCH (".implode(", ",array_map('idf_escape',$s["columns"])).") AGAINST (".q($_GET["fulltext"][$p]).(isset($_GET["boolean"][$p])?" IN BOOLEAN MODE":"").")";}foreach((array)$_GET["where"]as$W){if("$W[col]$W[val]"!=""&&in_array($W["op"],$this->operators)){$ab=" $W[op]";if(ereg('IN$',$W["op"])){$Dc=process_length($W["val"]);$ab.=" (".($Dc!=""?$Dc:"NULL").")";}elseif(!$W["op"])$ab.=$W["val"];elseif($W["op"]=="LIKE %%")$ab=" LIKE ".$this->processInput($m[$W["col"]],"%$W[val]%");elseif(!ereg('NULL$',$W["op"]))$ab.=" ".$this->processInput($m[$W["col"]],$W["val"]);if($W["col"]!="")$F[]=idf_escape($W["col"]).$ab;else{$Ua=array();foreach($m
- as$_=>$l){if(is_numeric($W["val"])||!ereg('int|float|double|decimal|bit',$l["type"])){$_=idf_escape($_);$Ua[]=($u=="sql"&&ereg('char|text|enum|set',$l["type"])&&!ereg('^utf8',$l["collation"])?"CONVERT($_ USING utf8)":$_);}}$F[]=($Ua?"(".implode("$ab OR ",$Ua)."$ab)":"0");}}}return$F;}function
- selectOrderProcess($m,$t){$F=array();foreach((array)$_GET["order"]as$v=>$W){if(isset($m[$W])||preg_match('~^((COUNT\\(DISTINCT |[A-Z0-9_]+\\()(`(?:[^`]|``)+`|"(?:[^"]|"")+")\\)|COUNT\\(\\*\\))$~',$W))$F[]=(isset($m[$W])?idf_escape($W):$W).(isset($_GET["desc"][$v])?" DESC":"");}return$F;}function
- selectLimitProcess(){return(isset($_GET["limit"])?$_GET["limit"]:"30");}function
- selectLengthProcess(){return(isset($_GET["text_length"])?$_GET["text_length"]:"100");}function
- selectEmailProcess($Z,$jc){return
- false;}function
- messageQuery($D){global$u;static$fb=0;restart_session();$q="sql-".($fb++);$yc=&get_session("queries");if(strlen($D)>1e6)$D=ereg_replace('[\x80-\xFF]+$','',substr($D,0,1e6))."\n...";$yc[$_GET["db"]][]=array($D,time());return" <span class='time'>".@date("H:i:s")."</span> <a href='#$q' onclick=\"return !toggle('$q');\">".lang(46)."</a><div id='$q' class='hidden'><pre><code class='jush-$u'>".shorten_utf8($D,1000).'</code></pre><p><a href="'.h(str_replace("db=".urlencode(DB),"db=".urlencode($_GET["db"]),ME).'sql=&history='.(count($yc[$_GET["db"]])-1)).'">'.lang(33).'</a></div>';}function
- editFunctions($l){global$Cb;$F=($l["null"]?"NULL/":"");foreach($Cb
- as$v=>$rc){if(!$v||(!isset($_GET["call"])&&(isset($_GET["select"])||where($_GET)))){foreach($rc
- as$oe=>$W){if(!$oe||ereg($oe,$l["type"]))$F.="/$W";}if($v&&!ereg('set|blob|bytea|raw|file',$l["type"]))$F.="/=";}}return
- explode("/",$F);}function
- editInput($N,$l,$_a,$X){if($l["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$_a value='-1' checked><i>".lang(5)."</i></label> ":"").($l["null"]?"<label><input type='radio'$_a value=''".($X!==null||isset($_GET["select"])?"":" checked")."><i>NULL</i></label> ":"").enum_input("radio",$_a,$l,$X,0);return"";}function
- processInput($l,$X,$o=""){if($o=="=")return$X;$_=$l["field"];$F=($l["type"]=="bit"&&ereg("^([0-9]+|b'[0-1]+')\$",$X)?$X:q($X));if(ereg('^(now|getdate|uuid)$',$o))$F="$o()";elseif(ereg('^current_(date|timestamp)$',$o))$F=$o;elseif(ereg('^([+-]|\\|\\|)$',$o))$F=idf_escape($_)." $o $F";elseif(ereg('^[+-] interval$',$o))$F=idf_escape($_)." $o ".(preg_match("~^(\\d+|'[0-9.: -]') [A-Z_]+$~i",$X)?$X:$F);elseif(ereg('^(addtime|subtime|concat)$',$o))$F="$o(".idf_escape($_).", $F)";elseif(ereg('^(md5|sha1|password|encrypt|hex)$',$o))$F="$o($F)";if(ereg("binary",$l["type"]))$F="unhex($F)";return$F;}function
- dumpOutput(){$F=array('text'=>lang(47),'file'=>lang(48));if(function_exists('gzencode'))$F['gz']='gzip';if(function_exists('bzcompress'))$F['bz2']='bzip2';return$F;}function
- dumpFormat(){return
- array('sql'=>'SQL','csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function
- dumpTable($N,$M,$Nc=false){if($_POST["format"]!="sql"){echo"\xef\xbb\xbf";if($M)dump_csv(array_keys(fields($N)));}elseif($M){$gb=create_sql($N,$_POST["auto_increment"]);if($gb){if($M=="DROP+CREATE")echo"DROP ".($Nc?"VIEW":"TABLE")." IF EXISTS ".table($N).";\n";if($Nc)$gb=remove_definer($gb);echo($M!="CREATE+ALTER"?$gb:($Nc?substr_replace($gb," OR REPLACE",6,0):substr_replace($gb," IF NOT EXISTS",12,0))).";\n\n";}if($M=="CREATE+ALTER"&&!$Nc){$D="SELECT COLUMN_NAME, COLUMN_DEFAULT, IS_NULLABLE, COLLATION_NAME, COLUMN_TYPE, EXTRA, COLUMN_COMMENT FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ".q($N)." ORDER BY ORDINAL_POSITION";echo"DELIMITER ;;
- CREATE PROCEDURE adminer_alter (INOUT alter_command text) BEGIN
- DECLARE _column_name, _collation_name, after varchar(64) DEFAULT '';
- DECLARE _column_type, _column_default text;
- DECLARE _is_nullable char(3);
- DECLARE _extra varchar(30);
- DECLARE _column_comment varchar(255);
- DECLARE done, set_after bool DEFAULT 0;
- DECLARE add_columns text DEFAULT '";$m=array();$ua="";foreach(get_rows($D)as$G){$qb=$G["COLUMN_DEFAULT"];$G["default"]=($qb!==null?q($qb):"NULL");$G["after"]=q($ua);$G["alter"]=escape_string(idf_escape($G["COLUMN_NAME"])." $G[COLUMN_TYPE]".($G["COLLATION_NAME"]?" COLLATE $G[COLLATION_NAME]":"").($qb!==null?" DEFAULT ".($qb=="CURRENT_TIMESTAMP"?$qb:$G["default"]):"").($G["IS_NULLABLE"]=="YES"?"":" NOT NULL").($G["EXTRA"]?" $G[EXTRA]":"").($G["COLUMN_COMMENT"]?" COMMENT ".q($G["COLUMN_COMMENT"]):"").($ua?" AFTER ".idf_escape($ua):" FIRST"));echo", ADD $G[alter]";$m[]=$G;$ua=$G["COLUMN_NAME"];}echo"';
- DECLARE columns CURSOR FOR $D;
- DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
- SET @alter_table = '';
- OPEN columns;
- REPEAT
- FETCH columns INTO _column_name, _column_default, _is_nullable, _collation_name, _column_type, _extra, _column_comment;
- IF NOT done THEN
- SET set_after = 1;
- CASE _column_name";foreach($m
- as$G)echo"
- WHEN ".q($G["COLUMN_NAME"])." THEN
- SET add_columns = REPLACE(add_columns, ', ADD $G[alter]', IF(
- _column_default <=> $G[default] AND _is_nullable = '$G[IS_NULLABLE]' AND _collation_name <=> ".(isset($G["COLLATION_NAME"])?"'$G[COLLATION_NAME]'":"NULL")." AND _column_type = ".q($G["COLUMN_TYPE"])." AND _extra = '$G[EXTRA]' AND _column_comment = ".q($G["COLUMN_COMMENT"])." AND after = $G[after]
- , '', ', MODIFY $G[alter]'));";echo"
- ELSE
- SET @alter_table = CONCAT(@alter_table, ', DROP ', _column_name);
- SET set_after = 0;
- END CASE;
- IF set_after THEN
- SET after = _column_name;
- END IF;
- END IF;
- UNTIL done END REPEAT;
- CLOSE columns;
- IF @alter_table != '' OR add_columns != '' THEN
- SET alter_command = CONCAT(alter_command, 'ALTER TABLE ".table($N)."', SUBSTR(CONCAT(add_columns, @alter_table), 2), ';\\n');
- END IF;
- END;;
- DELIMITER ;
- CALL adminer_alter(@adminer_alter);
- DROP PROCEDURE adminer_alter;
- ";}}}function
- dumpData($N,$M,$D){global$g,$u;$ld=($u=="sqlite"?0:1048576);if($M){if($_POST["format"]=="sql"&&$M=="TRUNCATE+INSERT")echo
- truncate_sql($N).";\n";if($_POST["format"]=="sql")$m=fields($N);$E=$g->query($D,1);if($E){$Kc="";$Ka="";$Sc=array();while($G=$E->fetch_row()){if(!$Sc){foreach($G
- as$W){$l=$E->fetch_field();$Sc[]=$l->name;}}if($_POST["format"]!="sql"){if($M=="table"){dump_csv($Sc);$M="INSERT";}dump_csv($G);}else{if(!$Kc)$Kc="INSERT INTO ".table($N)." (".implode(", ",array_map('idf_escape',$Sc)).") VALUES";foreach($G
- as$v=>$W)$G[$v]=($W!==null?(ereg('int|float|double|decimal|bit',$m[$Sc[$v]]["type"])?$W:q($W)):"NULL");$Xe=implode(",\t",$G);if($M=="INSERT+UPDATE"){$K=array();foreach($G
- as$v=>$W)$K[]=idf_escape($Sc[$v])." = $W";echo"$Kc ($Xe) ON DUPLICATE KEY UPDATE ".implode(", ",$K).";\n";}else{$Xe=($ld?"\n":" ")."($Xe)";if(!$Ka)$Ka=$Kc.$Xe;elseif(strlen($Ka)+4+strlen($Xe)<$ld)$Ka.=",$Xe";else{echo"$Ka;\n";$Ka=$Kc.$Xe;}}}}if($_POST["format"]=="sql"&&$M!="INSERT+UPDATE"&&$Ka){$Ka.=";\n";echo$Ka;}}elseif($_POST["format"]=="sql")echo"-- ".str_replace("\n"," ",$g->error)."\n";}}function
- dumpFilename($Bc){return
- friendly_url($Bc!=""?$Bc:(SERVER!=""?SERVER:"localhost"));}function
- dumpHeaders($Bc,$yd=false){$de=$_POST["output"];$Yb=($_POST["format"]=="sql"?"sql":($yd?"tar":"csv"));header("Content-Type: ".($de=="bz2"?"application/x-bzip":($de=="gz"?"application/x-gzip":($Yb=="tar"?"application/x-tar":($Yb=="sql"||$de!="file"?"text/plain":"text/csv")."; charset=utf-8"))));if($de=="bz2")ob_start('bzcompress',1e6);if($de=="gz")ob_start('gzencode',1e6);return$Yb;}function
- homepage(){echo'<p>'.($_GET["ns"]==""?'<a href="'.h(ME).'database=">'.lang(49)."</a>\n":""),(support("scheme")?"<a href='".h(ME)."scheme='>".($_GET["ns"]!=""?lang(50):lang(51))."</a>\n":""),($_GET["ns"]!==""?'<a href="'.h(ME).'schema=">'.lang(52)."</a>\n":""),(support("privileges")?"<a href='".h(ME)."privileges='>".lang(53)."</a>\n":"");return
- true;}function
- navigation($xd){global$ia,$g,$Q,$u,$xb;echo'<h1>
- ',$this->name(),' <span class="version">',$ia,'</span>
- <a href="http://www.adminer.org/#download" id="version">',(version_compare($ia,$_COOKIE["adminer_version"])<0?h($_COOKIE["adminer_version"]):""),'</a>
- </h1>
- ';if($xd=="auth"){$gc=true;foreach((array)$_SESSION["pwds"]as$wb=>$hf){foreach($hf
- as$J=>$kg){foreach($kg
- as$U=>$B){if($B!==null){if($gc){echo"<p id='logins' onmouseover='menuOver(this);' onmouseout='menuOut(this);'>\n";$gc=false;}echo"<a href='".h(auth_url($wb,$J,$U))."'>($xb[$wb]) ".h($U.($J!=""?"@$J":""))."</a><br>\n";}}}}}else{$i=$this->databases();echo'<form action="" method="post">
- <p class="logout">
- ';if(DB==""||!$xd){echo"<a href='".h(ME)."sql='".bold(isset($_GET["sql"])).">".lang(46)."</a>\n";if(support("dump"))echo"<a href='".h(ME)."dump=".urlencode(isset($_GET["table"])?$_GET["table"]:$_GET["select"])."' id='dump'".bold(isset($_GET["dump"])).">".lang(54)."</a>\n";}echo'<input type="submit" name="logout" value="',lang(55),'">
- <input type="hidden" name="token" value="',$Q,'">
- </p>
- </form>
- <form action="">
- <p id="dbs">
- ';hidden_fields_get();echo($i?html_select("db",array(""=>"(".lang(56).")")+$i,DB,"this.form.submit();"):'<input name="db" value="'.h(DB).'">'),'<input type="submit" value="',lang(9),'"',($i?" class='hidden'":""),'>
- ';if($xd!="db"&&DB!=""&&$g->select_db(DB)){if(support("scheme")){echo"<br>".html_select("ns",array(""=>"(".lang(57).")")+schemas(),$_GET["ns"],"this.form.submit();");if($_GET["ns"]!="")set_schema($_GET["ns"]);}}echo(isset($_GET["sql"])?'<input type="hidden" name="sql" value="">':(isset($_GET["schema"])?'<input type="hidden" name="schema" value="">':(isset($_GET["dump"])?'<input type="hidden" name="dump" value="">':""))),"</p></form>\n";if($_GET["ns"]!==""&&!$xd&&DB!=""){echo'<p><a href="'.h(ME).'create="'.bold($_GET["create"]==="").">".lang(58)."</a>\n";$P=tables_list();if(!$P)echo"<p class='message'>".lang(6)."\n";else{$this->tablesPrint($P);$ed=array();foreach($P
- as$N=>$S)$ed[]=preg_quote($N,'/');echo"<script type='text/javascript'>\n","var jushLinks = { $u: [ '".js_escape(ME)."table=\$&', /\\b(".implode("|",$ed).")\\b/g ] };\n";foreach(array("bac","bra","sqlite_quo","mssql_bra")as$W)echo"jushLinks.$W = jushLinks.$u;\n";echo"</script>\n";}}}}function
- tablesPrint($P){echo"<p id='tables' onmouseover='menuOver(this);' onmouseout='menuOut(this);'>\n";foreach($P
- as$N=>$S){echo'<a href="'.h(ME).'select='.urlencode($N).'"'.bold($_GET["select"]==$N).">".lang(59)."</a> ",'<a href="'.h(ME).'table='.urlencode($N).'"'.bold($_GET["table"]==$N)." title='".lang(28)."'>".$this->tableName(array("Name"=>$N))."</a><br>\n";}}}$b=(function_exists('adminer_object')?adminer_object():new
- Adminer);if($b->operators===null)$b->operators=$Pd;function
- page_header($Kf,$k="",$Ja=array(),$Lf=""){global$ca,$b,$g,$xb;header("Content-Type: text/html; charset=utf-8");if($b->headers()){header("X-Frame-Options: deny");header("X-XSS-Protection: 0");}$Mf=$Kf.($Lf!=""?": ".h($Lf):"");$Nf=strip_tags($Mf.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".$b->name());echo'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <html lang="',$ca,'" dir="',lang(60),'">
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <meta http-equiv="Content-Script-Type" content="text/javascript">
- <meta name="robots" content="noindex">
- <title>',$Nf,'</title>
- <link rel="stylesheet" type="text/css" href="',h(preg_replace("~\\?.*~","",ME))."?file=default.css&version=3.5.1",'">
- <script type="text/javascript" src="',h(preg_replace("~\\?.*~","",ME))."?file=functions.js&version=3.5.1",'"></script>
- ';if($b->head()){echo'<link rel="shortcut icon" type="image/x-icon" href="',h(preg_replace("~\\?.*~","",ME))."?file=favicon.ico&version=3.5.1",'" id="favicon">
- ';if(file_exists("adminer.css")){echo'<link rel="stylesheet" type="text/css" href="adminer.css">
- ';}}echo'
- <body class="',lang(60),' nojs" onkeydown="bodyKeydown(event);" onload="bodyLoad(\'',(is_object($g)?substr($g->server_info,0,3):""),'\');',(isset($_COOKIE["adminer_version"])?"":" verifyVersion();"),'">
- <script type="text/javascript">
- document.body.className = document.body.className.replace(/ nojs/, \' js\');
- </script>
- <div id="content">
- ';if($Ja!==null){$y=substr(preg_replace('~(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($y?$y:".").'">'.$xb[DRIVER].'</a> » ';$y=substr(preg_replace('~(db|ns)=[^&]*&~','',ME),0,-1);$J=(SERVER!=""?h(SERVER):lang(21));if($Ja===false)echo"$J\n";else{echo"<a href='".($y?h($y):".")."' accesskey='1' title='Alt+Shift+1'>$J</a> » ";if($_GET["ns"]!=""||(DB!=""&&is_array($Ja)))echo'<a href="'.h($y."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> » ';if(is_array($Ja)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> » ';foreach($Ja
- as$v=>$W){$sb=(is_array($W)?$W[1]:$W);if($sb!="")echo'<a href="'.h(ME."$v=").urlencode(is_array($W)?$W[0]:$W).'">'.h($sb).'</a> » ';}}echo"$Kf\n";}}echo"<h2>$Mf</h2>\n";restart_session();$hg=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$ud=$_SESSION["messages"][$hg];if($ud){echo"<div class='message'>".implode("</div>\n<div class='message'>",$ud)."</div>\n";unset($_SESSION["messages"][$hg]);}$i=&get_session("dbs");if(DB!=""&&$i&&!in_array(DB,$i,true))$i=null;if($k)echo"<div class='error'>$k</div>\n";define("PAGE_HEADER",1);}function
- page_footer($xd=""){global$b;echo'</div>
- ';switch_lang();echo'<div id="menu">
- ';$b->navigation($xd);echo'</div>
- ';}function
- int32($_d){while($_d>=2147483648)$_d-=4294967296;while($_d<=-2147483649)$_d+=4294967296;return(int)$_d;}function
- long2str($V,$qg){$Xe='';foreach($V
- as$W)$Xe.=pack('V',$W);if($qg)return
- substr($Xe,0,end($V));return$Xe;}function
- str2long($Xe,$qg){$V=array_values(unpack('V*',str_pad($Xe,4*ceil(strlen($Xe)/4),"\0")));if($qg)$V[]=strlen($Xe);return$V;}function
- xxtea_mx($ug,$tg,$uf,$Qc){return
- int32((($ug>>5&0x7FFFFFF)^$tg<<2)+(($tg>>3&0x1FFFFFFF)^$ug<<4))^int32(($uf^$tg)+($Qc^$ug));}function
- encrypt_string($pf,$v){if($pf=="")return"";$v=array_values(unpack("V*",pack("H*",md5($v))));$V=str2long($pf,true);$_d=count($V)-1;$ug=$V[$_d];$tg=$V[0];$C=floor(6+52/($_d+1));$uf=0;while($C-->0){$uf=int32($uf+0x9E3779B9);$Bb=$uf>>2&3;for($ee=0;$ee<$_d;$ee++){$tg=$V[$ee+1];$zd=xxtea_mx($ug,$tg,$uf,$v[$ee&3^$Bb]);$ug=int32($V[$ee]+$zd);$V[$ee]=$ug;}$tg=$V[0];$zd=xxtea_mx($ug,$tg,$uf,$v[$ee&3^$Bb]);$ug=int32($V[$_d]+$zd);$V[$_d]=$ug;}return
- long2str($V,false);}function
- decrypt_string($pf,$v){if($pf=="")return"";$v=array_values(unpack("V*",pack("H*",md5($v))));$V=str2long($pf,false);$_d=count($V)-1;$ug=$V[$_d];$tg=$V[0];$C=floor(6+52/($_d+1));$uf=int32($C*0x9E3779B9);while($uf){$Bb=$uf>>2&3;for($ee=$_d;$ee>0;$ee--){$ug=$V[$ee-1];$zd=xxtea_mx($ug,$tg,$uf,$v[$ee&3^$Bb]);$tg=int32($V[$ee]-$zd);$V[$ee]=$tg;}$ug=$V[$_d];$zd=xxtea_mx($ug,$tg,$uf,$v[$ee&3^$Bb]);$tg=int32($V[0]-$zd);$V[0]=$tg;$uf=int32($uf-0x9E3779B9);}return
- long2str($V,true);}$g='';$Q=$_SESSION["token"];if(!$_SESSION["token"])$_SESSION["token"]=rand(1,1e6);$pe=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$W){list($v)=explode(":",$W);$pe[$v]=$W;}}$Aa=$_POST["auth"];if($Aa){session_regenerate_id();$_SESSION["pwds"][$Aa["driver"]][$Aa["server"]][$Aa["username"]]=$Aa["password"];if($Aa["permanent"]){$v=base64_encode($Aa["driver"])."-".base64_encode($Aa["server"])."-".base64_encode($Aa["username"]);$_e=$b->permanentLogin();$pe[$v]="$v:".base64_encode($_e?encrypt_string($Aa["password"],$_e):"");cookie("adminer_permanent",implode(" ",$pe));}if(count($_POST)==1||DRIVER!=$Aa["driver"]||SERVER!=$Aa["server"]||$_GET["username"]!==$Aa["username"]||DB!=$Aa["db"])redirect(auth_url($Aa["driver"],$Aa["server"],$Aa["username"],$Aa["db"]));}elseif($_POST["logout"]){if($Q&&$_POST["token"]!=$Q){page_header(lang(55),lang(61));page_footer("db");exit;}else{foreach(array("pwds","dbs","queries")as$v)set_session($v,null);$v=base64_encode(DRIVER)."-".base64_encode(SERVER)."-".base64_encode($_GET["username"]);if($pe[$v]){unset($pe[$v]);cookie("adminer_permanent",implode(" ",$pe));}redirect(substr(preg_replace('~(username|db|ns)=[^&]*&~','',ME),0,-1),lang(62));}}elseif($pe&&!$_SESSION["pwds"]){session_regenerate_id();$_e=$b->permanentLogin();foreach($pe
- as$v=>$W){list(,$Qa)=explode(":",$W);list($wb,$J,$U)=array_map('base64_decode',explode("-",$v));$_SESSION["pwds"][$wb][$J][$U]=decrypt_string(base64_decode($Qa),$_e);}}function
- auth_error($Sb=null){global$g,$b,$Q;$if=session_name();$k="";if(!$_COOKIE[$if]&&$_GET[$if]&&ini_bool("session.use_only_cookies"))$k=lang(63);elseif(isset($_GET["username"])){if(($_COOKIE[$if]||$_GET[$if])&&!$Q)$k=lang(64);else{$B=&get_session("pwds");if($B!==null){$k=h($Sb?$Sb->getMessage():(is_string($g)?$g:lang(65)));$B=null;}}}page_header(lang(25),$k,null);echo"<form action='' method='post'>\n";$b->loginForm();echo"<div>";hidden_fields($_POST,array("auth"));echo"</div>\n","</form>\n";page_footer("auth");}if(isset($_GET["username"])){if(!class_exists("Min_DB")){unset($_SESSION["pwds"][DRIVER]);page_header(lang(66),lang(67,implode(", ",$ue)),false);page_footer("auth");exit;}$g=connect();}if(is_string($g)||!$b->login($_GET["username"],get_session("pwds"))){auth_error();exit;}$Q=$_SESSION["token"];if($Aa&&$_POST["token"])$_POST["token"]=$Q;$k=($_POST?($_POST["token"]==$Q?"":lang(61)):($_SERVER["REQUEST_METHOD"]!="POST"?"":lang(68,'"post_max_size"')));function
- connect_error(){global$b,$g,$Q,$k,$xb;$i=array();if(DB!="")page_header(lang(24).": ".h(DB),lang(69),true);else{if($_POST["db"]&&!$k)queries_redirect(substr(ME,0,-1),lang(70),drop_databases($_POST["db"]));page_header(lang(71),$k,false);echo"<p><a href='".h(ME)."database='>".lang(72)."</a>\n";foreach(array('privileges'=>lang(53),'processlist'=>lang(73),'variables'=>lang(74),'status'=>lang(75),)as$v=>$W){if(support($v))echo"<a href='".h(ME)."$v='>$W</a>\n";}echo"<p>".lang(76,$xb[DRIVER],"<b>$g->server_info</b>","<b>$g->extension</b>")."\n","<p>".lang(77,"<b>".h(logged_user())."</b>")."\n";if($_GET["refresh"])set_session("dbs",null);$i=$b->databases();if($i){$af=support("scheme");$Ta=collations();echo"<form action='' method='post'>\n","<table cellspacing='0' class='checkable' onclick='tableClick(event);'>\n","<thead><tr><td> <th>".lang(24)."<td>".lang(78)."<td>".lang(79)."</thead>\n";foreach($i
- as$j){$Se=h(ME)."db=".urlencode($j);echo"<tr".odd()."><td>".checkbox("db[]",$j,in_array($j,(array)$_POST["db"])),"<th><a href='$Se'>".h($j)."</a>","<td><a href='$Se".($af?"&ns=":"")."&database=' title='".lang(49)."'>".nbsp(db_collation($j,$Ta))."</a>","<td align='right'><a href='$Se&schema=' id='tables-".h($j)."' title='".lang(52)."'>?</a>","\n";}echo"</table>\n","<script type='text/javascript'>tableCheck();</script>\n","<p><input type='submit' name='drop' value='".lang(80)."'".confirm("formChecked(this, /db/)").">\n","<input type='hidden' name='token' value='$Q'>\n","<a href='".h(ME)."refresh=1'>".lang(81)."</a>\n","</form>\n";}}page_footer("db");if($i)echo"<script type='text/javascript'>ajaxSetHtml('".js_escape(ME)."script=connect');</script>\n";}if(isset($_GET["status"]))$_GET["variables"]=$_GET["status"];if(!(DB!=""?$g->select_db(DB):isset($_GET["sql"])||isset($_GET["dump"])||isset($_GET["database"])||isset($_GET["processlist"])||isset($_GET["privileges"])||isset($_GET["user"])||isset($_GET["variables"])||$_GET["script"]=="connect")){if(DB!="")set_session("dbs",null);connect_error();exit;}if(support("scheme")&&DB!=""&&$_GET["ns"]!==""){if(!isset($_GET["ns"]))redirect(preg_replace('~ns=[^&]*&~','',ME)."ns=".get_schema());if(!set_schema($_GET["ns"])){page_header(lang(82).": ".h($_GET["ns"]),lang(83),true);page_footer("ns");exit;}}function
- select($E,$h=null,$Ac="",$Wd=array()){$ed=array();$t=array();$f=array();$Ha=array();$T=array();$F=array();odd('');for($p=0;$G=$E->fetch_row();$p++){if(!$p){echo"<table cellspacing='0' class='nowrap'>\n","<thead><tr>";for($Oc=0;$Oc<count($G);$Oc++){$l=$E->fetch_field();$_=$l->name;$Vd=$l->orgtable;$Ud=$l->orgname;$F[$l->table]=$Vd;if($Ac)$ed[$Oc]=($_=="table"?"table=":($_=="possible_keys"?"indexes=":null));elseif($Vd!=""){if(!isset($t[$Vd])){$t[$Vd]=array();foreach(indexes($Vd,$h)as$s){if($s["type"]=="PRIMARY"){$t[$Vd]=array_flip($s["columns"]);break;}}$f[$Vd]=$t[$Vd];}if(isset($f[$Vd][$Ud])){unset($f[$Vd][$Ud]);$t[$Vd][$Ud]=$Oc;$ed[$Oc]=$Vd;}}if($l->charsetnr==63)$Ha[$Oc]=true;$T[$Oc]=$l->type;$_=h($_);echo"<th".($Vd!=""||$l->name!=$Ud?" title='".h(($Vd!=""?"$Vd.":"").$Ud)."'":"").">".($Ac?"<a href='$Ac".strtolower($_)."' target='_blank' rel='noreferrer'>$_</a>":$_);}echo"</thead>\n";}echo"<tr".odd().">";foreach($G
- as$v=>$W){if($W===null)$W="<i>NULL</i>";elseif($Ha[$v]&&!is_utf8($W))$W="<i>".lang(34,strlen($W))."</i>";elseif(!strlen($W))$W=" ";else{$W=h($W);if($T[$v]==254)$W="<code>$W</code>";}if(isset($ed[$v])&&!$f[$ed[$v]]){if($Ac){$N=$G[array_search("table=",$ed)];$y=$ed[$v].urlencode($Wd[$N]!=""?$Wd[$N]:$N);}else{$y="edit=".urlencode($ed[$v]);foreach($t[$ed[$v]]as$Ra=>$Oc)$y.="&where".urlencode("[".bracket_escape($Ra)."]")."=".urlencode($G[$Oc]);}$W="<a href='".h(ME.$y)."'>$W</a>";}echo"<td>$W";}}echo($p?"</table>":"<p class='message'>".lang(84))."\n";return$F;}function
- referencable_primary($df){$F=array();foreach(table_status()as$yf=>$N){if($yf!=$df&&fk_support($N)){foreach(fields($yf)as$l){if($l["primary"]){if($F[$yf]){unset($F[$yf]);break;}$F[$yf]=$l;}}}}return$F;}function
- textarea($_,$X,$H=10,$Ua=80){echo"<textarea name='$_' rows='$H' cols='$Ua' class='sqlarea' spellcheck='false' wrap='off' onkeydown='return textareaKeydown(this, event);'>";if(is_array($X)){foreach($X
- as$W)echo
- h($W[0])."\n\n\n";}else
- echo
- h($X);echo"</textarea>";}function
- format_time($mf,$Ib){return" <span class='time'>(".lang(85,max(0,array_sum(explode(" ",$Ib))-array_sum(explode(" ",$mf)))).")</span>";}function
- edit_type($v,$l,$Ta,$kc=array()){global$qf,$T,$fg,$Ld;echo'<td><select name="',$v,'[type]" class="type" onfocus="lastType = selectValue(this);" onchange="editingTypeChange(this);">',optionlist((!$l["type"]||isset($T[$l["type"]])?array():array($l["type"]))+$qf+($kc?array(lang(86)=>$kc):array()),$l["type"]),'</select>
- <td><input name="',$v,'[length]" value="',h($l["length"]),'" size="3" onfocus="editingLengthFocus(this);"><td class="options">',"<select name='$v"."[collation]'".(ereg('(char|text|enum|set)$',$l["type"])?"":" class='hidden'").'><option value="">('.lang(87).')'.optionlist($Ta,$l["collation"]).'</select>',($fg?"<select name='$v"."[unsigned]'".(!$l["type"]||ereg('(int|float|double|decimal)$',$l["type"])?"":" class='hidden'").'><option>'.optionlist($fg,$l["unsigned"]).'</select>':''),($kc?"<select name='$v"."[on_delete]'".(ereg("`",$l["type"])?"":" class='hidden'")."><option value=''>(".lang(88).")".optionlist(explode("|",$Ld),$l["on_delete"])."</select> ":" ");}function
- process_length($w){global$Lb;return(preg_match("~^\\s*(?:$Lb)(?:\\s*,\\s*(?:$Lb))*\\s*\$~",$w)&&preg_match_all("~$Lb~",$w,$jd)?implode(",",$jd[0]):preg_replace('~[^0-9,+-]~','',$w));}function
- process_type($l,$Sa="COLLATE"){global$fg;return" $l[type]".($l["length"]!=""?"(".process_length($l["length"]).")":"").(ereg('int|float|double|decimal',$l["type"])&&in_array($l["unsigned"],$fg)?" $l[unsigned]":"").(ereg('char|text|enum|set',$l["type"])&&$l["collation"]?" $Sa ".q($l["collation"]):"");}function
- process_field($l,$Xf){return
- array(idf_escape(trim($l["field"])),process_type($Xf),($l["null"]?" NULL":" NOT NULL"),(isset($l["default"])?" DEFAULT ".(($l["type"]=="timestamp"&&eregi('^CURRENT_TIMESTAMP$',$l["default"]))||($l["type"]=="bit"&&ereg("^([0-9]+|b'[0-1]+')\$",$l["default"]))?$l["default"]:q($l["default"])):""),($l["on_update"]?" ON UPDATE $l[on_update]":""),(support("comment")&&$l["comment"]!=""?" COMMENT ".q($l["comment"]):""),($l["auto_increment"]?auto_increment():null),);}function
- type_class($S){foreach(array('char'=>'text','date'=>'time|year','binary'=>'blob','enum'=>'set',)as$v=>$W){if(ereg("$v|$W",$S))return" class='$v'";}}function
- edit_fields($m,$Ta,$S="TABLE",$xa=0,$kc=array(),$Ya=false){global$Ic;echo'<thead><tr class="wrap">
- ';if($S=="PROCEDURE"){echo'<td> ';}echo'<th>',($S=="TABLE"?lang(89):lang(90)),'<td>',lang(91),'<textarea id="enum-edit" rows="4" cols="12" wrap="off" style="display: none;" onblur="editingLengthBlur(this);"></textarea>
- <td>',lang(92),'<td>',lang(93);if($S=="TABLE"){echo'<td>NULL
- <td><input type="radio" name="auto_increment_col" value=""><acronym title="',lang(94),'">AI</acronym>
- <td',($_POST["defaults"]?"":" class='hidden'"),'>',lang(95),(support("comment")?"<td".($Ya?"":" class='hidden'").">".lang(96):"");}echo'<td>',"<input type='image' class='icon' name='add[".(support("move_col")?0:count($m))."]' src='".h(preg_replace("~\\?.*~","",ME))."?file=plus.gif&version=3.5.1' alt='+' title='".lang(97)."'>",'<script type="text/javascript">row_count = ',count($m),';</script>
- </thead>
- <tbody onkeydown="return editingKeydown(event);">
- ';foreach($m
- as$p=>$l){$p++;$Xd=$l[($_POST?"orig":"field")];$ub=(isset($_POST["add"][$p-1])||(isset($l["field"])&&!$_POST["drop_col"][$p]))&&(support("drop_col")||$Xd=="");echo'<tr',($ub?"":" style='display: none;'"),'>
- ',($S=="PROCEDURE"?"<td>".html_select("fields[$p][inout]",explode("|",$Ic),$l["inout"]):""),'<th>';if($ub){echo'<input name="fields[',$p,'][field]" value="',h($l["field"]),'" onchange="',($l["field"]!=""||count($m)>1?"":"editingAddRow(this, $xa); "),'editingNameChange(this);" maxlength="64">';}echo'<input type="hidden" name="fields[',$p,'][orig]" value="',h($Xd),'">
- ';edit_type("fields[$p]",$l,$Ta,$kc);if($S=="TABLE"){echo'<td>',checkbox("fields[$p][null]",1,$l["null"]),'<td><input type="radio" name="auto_increment_col" value="',$p,'"';if($l["auto_increment"]){echo' checked';}?> onclick="var field = this.form['fields[' + this.value + '][field]']; if (!field.value) { field.value = 'id'; field.onchange(); }">
- <td<?php echo($_POST["defaults"]?"":" class='hidden'"),'>',checkbox("fields[$p][has_default]",1,$l["has_default"]),'<input name="fields[',$p,'][default]" value="',h($l["default"]),'" onchange="this.previousSibling.checked = true;">
- ',(support("comment")?"<td".($Ya?"":" class='hidden'")."><input name='fields[$p][comment]' value='".h($l["comment"])."' maxlength='255'>":"");}echo"<td>",(support("move_col")?"<input type='image' class='icon' name='add[$p]' src='".h(preg_replace("~\\?.*~","",ME))."?file=plus.gif&version=3.5.1' alt='+' title='".lang(97)."' onclick='return !editingAddRow(this, $xa, 1);'> "."<input type='image' class='icon' name='up[$p]' src='".h(preg_replace("~\\?.*~","",ME))."?file=up.gif&version=3.5.1' alt='^' title='".lang(98)."'> "."<input type='image' class='icon' name='down[$p]' src='".h(preg_replace("~\\?.*~","",ME))."?file=down.gif&version=3.5.1' alt='v' title='".lang(99)."'> ":""),($Xd==""||support("drop_col")?"<input type='image' class='icon' name='drop_col[$p]' src='".h(preg_replace("~\\?.*~","",ME))."?file=cross.gif&version=3.5.1' alt='x' title='".lang(100)."' onclick='return !editingRemoveRow(this);'>":""),"\n";}}function
- process_fields(&$m){ksort($m);$A=0;if($_POST["up"]){$Wc=0;foreach($m
- as$v=>$l){if(key($_POST["up"])==$v){unset($m[$v]);array_splice($m,$Wc,0,array($l));break;}if(isset($l["field"]))$Wc=$A;$A++;}}if($_POST["down"]){$mc=false;foreach($m
- as$v=>$l){if(isset($l["field"])&&$mc){unset($m[key($_POST["down"])]);array_splice($m,$A,0,array($mc));break;}if(key($_POST["down"])==$v)$mc=$l;$A++;}}$m=array_values($m);if($_POST["add"])array_splice($m,key($_POST["add"]),0,array(array()));}function
- normalize_enum($z){return"'".str_replace("'","''",addcslashes(stripcslashes(str_replace($z[0][0].$z[0][0],$z[0][0],substr($z[0],1,-1))),'\\'))."'";}function
- grant($sc,$Be,$f,$Kd){if(!$Be)return
- true;if($Be==array("ALL PRIVILEGES","GRANT OPTION"))return($sc=="GRANT"?queries("$sc ALL PRIVILEGES$Kd WITH GRANT OPTION"):queries("$sc ALL PRIVILEGES$Kd")&&queries("$sc GRANT OPTION$Kd"));return
- queries("$sc ".preg_replace('~(GRANT OPTION)\\([^)]*\\)~','\\1',implode("$f, ",$Be).$f).$Kd);}function
- drop_create($yb,$gb,$fd,$td,$rd,$sd,$_){if($_POST["drop"])return
- query_redirect($yb,$fd,$td,true,!$_POST["dropped"]);$zb=$_!=""&&($_POST["dropped"]||queries($yb));$ib=queries($gb);if(!queries_redirect($fd,($_!=""?$rd:$sd),$ib)&&$zb)redirect(null,$td);return$zb;}function
- remove_definer($D){return
- preg_replace('~^([A-Z =]+) DEFINER=`'.preg_replace('~@(.*)~','`@`(%|\\1)',logged_user()).'`~','\\1',$D);}function
- tar_file($ec,$cb){$F=pack("a100a8a8a8a12a12",$ec,644,0,0,decoct(strlen($cb)),decoct(time()));$Pa=8*32;for($p=0;$p<strlen($F);$p++)$Pa+=ord($F[$p]);$F.=sprintf("%06o",$Pa)."\0 ";return$F.str_repeat("\0",512-strlen($F)).$cb.str_repeat("\0",511-(strlen($cb)+511)%
- 512);}function
- ini_bytes($Hc){$W=ini_get($Hc);switch(strtolower(substr($W,-1))){case'g':$W*=1024;case'm':$W*=1024;case'k':$W*=1024;}return$W;}session_cache_limiter("");if(!ini_bool("session.use_cookies")||@ini_set("session.use_cookies",false)!==false)session_write_close();$Ld="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";$Lb="'(?:''|[^'\\\\]|\\\\.)*+'";$Ic="IN|OUT|INOUT";if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["callf"]))$_GET["call"]=$_GET["callf"];if(isset($_GET["function"]))$_GET["procedure"]=$_GET["function"];if(isset($_GET["download"])){$a=$_GET["download"];header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$a-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));echo$g->result("SELECT".limit(idf_escape($_GET["field"])." FROM ".table($a)," WHERE ".where($_GET),1));exit;}elseif(isset($_GET["table"])){$a=$_GET["table"];$m=fields($a);if(!$m)$k=error();$O=($m?table_status($a):array());page_header(($m&&is_view($O)?lang(101):lang(102)).": ".h($a),$k);$b->selectLinks($O);$Xa=$O["Comment"];if($Xa!="")echo"<p>".lang(96).": ".h($Xa)."\n";if($m){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(103)."<td>".lang(91).(support("comment")?"<td>".lang(96):"")."</thead>\n";foreach($m
- as$l){echo"<tr".odd()."><th>".h($l["field"]),"<td title='".h($l["collation"])."'>".h($l["full_type"]).($l["null"]?" <i>NULL</i>":"").($l["auto_increment"]?" <i>".lang(94)."</i>":""),(isset($l["default"])?" [<b>".h($l["default"])."</b>]":""),(support("comment")?"<td>".nbsp($l["comment"]):""),"\n";}echo"</table>\n";if(!is_view($O)){echo"<h3>".lang(104)."</h3>\n";$t=indexes($a);if($t){echo"<table cellspacing='0'>\n";foreach($t
- as$_=>$s){ksort($s["columns"]);$ze=array();foreach($s["columns"]as$v=>$W)$ze[]="<i>".h($W)."</i>".($s["lengths"][$v]?"(".$s["lengths"][$v].")":"");echo"<tr title='".h($_)."'><th>$s[type]<td>".implode(", ",$ze)."\n";}echo"</table>\n";}echo'<p><a href="'.h(ME).'indexes='.urlencode($a).'">'.lang(105)."</a>\n";if(fk_support($O)){echo"<h3>".lang(86)."</h3>\n";$kc=foreign_keys($a);if($kc){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(106)."<td>".lang(107)."<td>".lang(88)."<td>".lang(108).($u!="sqlite"?"<td> ":"")."</thead>\n";foreach($kc
- as$_=>$n){echo"<tr title='".h($_)."'>","<th><i>".implode("</i>, <i>",array_map('h',$n["source"]))."</i>","<td><a href='".h($n["db"]!=""?preg_replace('~db=[^&]*~',"db=".urlencode($n["db"]),ME):($n["ns"]!=""?preg_replace('~ns=[^&]*~',"ns=".urlencode($n["ns"]),ME):ME))."table=".urlencode($n["table"])."'>".($n["db"]!=""?"<b>".h($n["db"])."</b>.":"").($n["ns"]!=""?"<b>".h($n["ns"])."</b>.":"").h($n["table"])."</a>","(<i>".implode("</i>, <i>",array_map('h',$n["target"]))."</i>)","<td>".nbsp($n["on_delete"])."\n","<td>".nbsp($n["on_update"])."\n",($u=="sqlite"?"":'<td><a href="'.h(ME.'foreign='.urlencode($a).'&name='.urlencode($_)).'">'.lang(109).'</a>');}echo"</table>\n";}if($u!="sqlite")echo'<p><a href="'.h(ME).'foreign='.urlencode($a).'">'.lang(110)."</a>\n";}if(support("trigger")){echo"<h3>".lang(111)."</h3>\n";$Wf=triggers($a);if($Wf){echo"<table cellspacing='0'>\n";foreach($Wf
- as$v=>$W)echo"<tr valign='top'><td>$W[0]<td>$W[1]<th>".h($v)."<td><a href='".h(ME.'trigger='.urlencode($a).'&name='.urlencode($v))."'>".lang(109)."</a>\n";echo"</table>\n";}echo'<p><a href="'.h(ME).'trigger='.urlencode($a).'">'.lang(112)."</a>\n";}}}}elseif(isset($_GET["schema"])){page_header(lang(52),"",array(),DB.($_GET["ns"]?".$_GET[ns]":""));$_f=array();$Af=array();$_="adminer_schema";$ea=($_GET["schema"]?$_GET["schema"]:$_COOKIE[($_COOKIE["$_-".DB]?"$_-".DB:$_)]);preg_match_all('~([^:]+):([-0-9.]+)x([-0-9.]+)(_|$)~',$ea,$jd,PREG_SET_ORDER);foreach($jd
- as$p=>$z){$_f[$z[1]]=array($z[2],$z[3]);$Af[]="\n\t'".js_escape($z[1])."': [ $z[2], $z[3] ]";}$Of=0;$Ga=-1;$Ze=array();$Le=array();$ad=array();foreach(table_status()as$O){if(!isset($O["Engine"]))continue;$re=0;$Ze[$O["Name"]]["fields"]=array();foreach(fields($O["Name"])as$_=>$l){$re+=1.25;$l["pos"]=$re;$Ze[$O["Name"]]["fields"][$_]=$l;}$Ze[$O["Name"]]["pos"]=($_f[$O["Name"]]?$_f[$O["Name"]]:array($Of,0));foreach($b->foreignKeys($O["Name"])as$W){if(!$W["db"]){$Yc=$Ga;if($_f[$O["Name"]][1]||$_f[$W["table"]][1])$Yc=min(floatval($_f[$O["Name"]][1]),floatval($_f[$W["table"]][1]))-1;else$Ga-=.1;while($ad[(string)$Yc])$Yc-=.0001;$Ze[$O["Name"]]["references"][$W["table"]][(string)$Yc]=array($W["source"],$W["target"]);$Le[$W["table"]][$O["Name"]][(string)$Yc]=$W["target"];$ad[(string)$Yc]=true;}}$Of=max($Of,$Ze[$O["Name"]]["pos"][0]+2.5+$re);}echo'<div id="schema" style="height: ',$Of,'em;" onselectstart="return false;">
- <script type="text/javascript">
- var tablePos = {',implode(",",$Af)."\n",'};
- var em = document.getElementById(\'schema\').offsetHeight / ',$Of,';
- document.onmousemove = schemaMousemove;
- document.onmouseup = function (ev) {
- schemaMouseup(ev, \'',js_escape(DB),'\');
- };
- </script>
- ';foreach($Ze
- as$_=>$N){echo"<div class='table' style='top: ".$N["pos"][0]."em; left: ".$N["pos"][1]."em;' onmousedown='schemaMousedown(this, event);'>",'<a href="'.h(ME).'table='.urlencode($_).'"><b>'.h($_)."</b></a>";foreach($N["fields"]as$l){$W='<span'.type_class($l["type"]).' title="'.h($l["full_type"].($l["null"]?" NULL":'')).'">'.h($l["field"]).'</span>';echo"<br>".($l["primary"]?"<i>$W</i>":$W);}foreach((array)$N["references"]as$Ff=>$Me){foreach($Me
- as$Yc=>$Ie){$Zc=$Yc-$_f[$_][1];$p=0;foreach($Ie[0]as$jf)echo"\n<div class='references' title='".h($Ff)."' id='refs$Yc-".($p++)."' style='left: $Zc"."em; top: ".$N["fields"][$jf]["pos"]."em; padding-top: .5em;'><div style='border-top: 1px solid Gray; width: ".(-$Zc)."em;'></div></div>";}}foreach((array)$Le[$_]as$Ff=>$Me){foreach($Me
- as$Yc=>$f){$Zc=$Yc-$_f[$_][1];$p=0;foreach($f
- as$Ef)echo"\n<div class='references' title='".h($Ff)."' id='refd$Yc-".($p++)."' style='left: $Zc"."em; top: ".$N["fields"][$Ef]["pos"]."em; height: 1.25em; background: url(".h(preg_replace("~\\?.*~","",ME))."?file=arrow.gif) no-repeat right center;&version=3.5.1'><div style='height: .5em; border-bottom: 1px solid Gray; width: ".(-$Zc)."em;'></div></div>";}}echo"\n</div>\n";}foreach($Ze
- as$_=>$N){foreach((array)$N["references"]as$Ff=>$Me){foreach($Me
- as$Yc=>$Ie){$wd=$Of;$nd=-10;foreach($Ie[0]as$v=>$jf){$se=$N["pos"][0]+$N["fields"][$jf]["pos"];$te=$Ze[$Ff]["pos"][0]+$Ze[$Ff]["fields"][$Ie[1][$v]]["pos"];$wd=min($wd,$se,$te);$nd=max($nd,$se,$te);}echo"<div class='references' id='refl$Yc' style='left: $Yc"."em; top: $wd"."em; padding: .5em 0;'><div style='border-right: 1px solid Gray; margin-top: 1px; height: ".($nd-$wd)."em;'></div></div>\n";}}}echo'</div>
- <p><a href="',h(ME."schema=".urlencode($ea)),'" id="schema-link">',lang(113),'</a>
- ';}elseif(isset($_GET["dump"])){$a=$_GET["dump"];if($_POST){$eb="";foreach(array("output","format","db_style","routines","events","table_style","auto_increment","triggers","data_style")as$v)$eb.="&$v=".urlencode($_POST[$v]);cookie("adminer_export",substr($eb,1));$Yb=dump_headers(($a!=""?$a:DB),(DB==""||count((array)$_POST["tables"]+(array)$_POST["data"])>1));$Mc=($_POST["format"]=="sql");if($Mc)echo"-- Adminer $ia ".$xb[DRIVER]." dump
- ".($u!="sql"?"":"SET NAMES utf8;
- SET foreign_key_checks = 0;
- SET time_zone = ".q($g->result("SELECT @@time_zone")).";
- SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
- ");$M=$_POST["db_style"];$i=array(DB);if(DB==""){$i=$_POST["databases"];if(is_string($i))$i=explode("\n",rtrim(str_replace("\r","",$i),"\n"));}foreach((array)$i
- as$j){if($g->select_db($j)){if($Mc&&ereg('CREATE',$M)&&($gb=$g->result("SHOW CREATE DATABASE ".idf_escape($j),1))){if($M=="DROP+CREATE")echo"DROP DATABASE IF EXISTS ".idf_escape($j).";\n";echo($M=="CREATE+ALTER"?preg_replace('~^CREATE DATABASE ~','\\0IF NOT EXISTS ',$gb):$gb).";\n";}if($Mc){if($M)echo
- use_sql($j).";\n\n";if(in_array("CREATE+ALTER",array($M,$_POST["table_style"])))echo"SET @adminer_alter = '';\n\n";$ce="";if($_POST["routines"]){foreach(array("FUNCTION","PROCEDURE")as$Te){foreach(get_rows("SHOW $Te STATUS WHERE Db = ".q($j),null,"-- ")as$G)$ce.=($M!='DROP+CREATE'?"DROP $Te IF EXISTS ".idf_escape($G["Name"]).";;\n":"").remove_definer($g->result("SHOW CREATE $Te ".idf_escape($G["Name"]),2)).";;\n\n";}}if($_POST["events"]){foreach(get_rows("SHOW EVENTS",null,"-- ")as$G)$ce.=($M!='DROP+CREATE'?"DROP EVENT IF EXISTS ".idf_escape($G["Name"]).";;\n":"").remove_definer($g->result("SHOW CREATE EVENT ".idf_escape($G["Name"]),3)).";;\n\n";}if($ce)echo"DELIMITER ;;\n\n$ce"."DELIMITER ;\n\n";}if($_POST["table_style"]||$_POST["data_style"]){$Y=array();foreach(table_status()as$O){$N=(DB==""||in_array($O["Name"],(array)$_POST["tables"]));$lb=(DB==""||in_array($O["Name"],(array)$_POST["data"]));if($N||$lb){if(!is_view($O)){if($Yb=="tar")ob_start();$b->dumpTable($O["Name"],($N?$_POST["table_style"]:""));if($lb)$b->dumpData($O["Name"],$_POST["data_style"],"SELECT * FROM ".table($O["Name"]));if($Mc&&$_POST["triggers"]&&$N&&($Wf=trigger_sql($O["Name"],$_POST["table_style"])))echo"\nDELIMITER ;;\n$Wf\nDELIMITER ;\n";if($Yb=="tar")echo
- tar_file((DB!=""?"":"$j/")."$O[Name].csv",ob_get_clean());elseif($Mc)echo"\n";}elseif($Mc)$Y[]=$O["Name"];}}foreach($Y
- as$og)$b->dumpTable($og,$_POST["table_style"],true);if($Yb=="tar")echo
- pack("x512");}if($M=="CREATE+ALTER"&&$Mc){$D="SELECT TABLE_NAME, ENGINE, TABLE_COLLATION, TABLE_COMMENT FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE()";echo"DELIMITER ;;
- CREATE PROCEDURE adminer_alter (INOUT alter_command text) BEGIN
- DECLARE _table_name, _engine, _table_collation varchar(64);
- DECLARE _table_comment varchar(64);
- DECLARE done bool DEFAULT 0;
- DECLARE tables CURSOR FOR $D;
- DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
- OPEN tables;
- REPEAT
- FETCH tables INTO _table_name, _engine, _table_collation, _table_comment;
- IF NOT done THEN
- CASE _table_name";foreach(get_rows($D)as$G){$Xa=q($G["ENGINE"]=="InnoDB"?preg_replace('~(?:(.+); )?InnoDB free: .*~','\\1',$G["TABLE_COMMENT"]):$G["TABLE_COMMENT"]);echo"
- WHEN ".q($G["TABLE_NAME"])." THEN
- ".(isset($G["ENGINE"])?"IF _engine != '$G[ENGINE]' OR _table_collation != '$G[TABLE_COLLATION]' OR _table_comment != $Xa THEN
- ALTER TABLE ".idf_escape($G["TABLE_NAME"])." ENGINE=$G[ENGINE] COLLATE=$G[TABLE_COLLATION] COMMENT=$Xa;
- END IF":"BEGIN END").";";}echo"
- ELSE
- SET alter_command = CONCAT(alter_command, 'DROP TABLE `', REPLACE(_table_name, '`', '``'), '`;\\n');
- END CASE;
- END IF;
- UNTIL done END REPEAT;
- CLOSE tables;
- END;;
- DELIMITER ;
- CALL adminer_alter(@adminer_alter);
- DROP PROCEDURE adminer_alter;
- ";}if(in_array("CREATE+ALTER",array($M,$_POST["table_style"]))&&$Mc)echo"SELECT @adminer_alter;\n";}}if($Mc)echo"-- ".$g->result("SELECT NOW()")."\n";exit;}page_header(lang(114),"",($_GET["export"]!=""?array("table"=>$_GET["export"]):array()),DB);echo'
- <form action="" method="post">
- <table cellspacing="0">
- ';$ob=array('','USE','DROP+CREATE','CREATE');$Bf=array('','DROP+CREATE','CREATE');$mb=array('','TRUNCATE+INSERT','INSERT');if($u=="sql"){$ob[]='CREATE+ALTER';$Bf[]='CREATE+ALTER';$mb[]='INSERT+UPDATE';}parse_str($_COOKIE["adminer_export"],$G);if(!$G)$G=array("output"=>"text","format"=>"sql","db_style"=>(DB!=""?"":"CREATE"),"table_style"=>"DROP+CREATE","data_style"=>"INSERT");if(!isset($G["events"])){$G["routines"]=$G["events"]=($_GET["dump"]=="");$G["triggers"]=$G["table_style"];}echo"<tr><th>".lang(115)."<td>".html_select("output",$b->dumpOutput(),$G["output"],0)."\n";echo"<tr><th>".lang(116)."<td>".html_select("format",$b->dumpFormat(),$G["format"],0)."\n";echo($u=="sqlite"?"":"<tr><th>".lang(24)."<td>".html_select('db_style',$ob,$G["db_style"]).(support("routine")?checkbox("routines",1,$G["routines"],lang(117)):"").(support("event")?checkbox("events",1,$G["events"],lang(118)):"")),"<tr><th>".lang(79)."<td>".html_select('table_style',$Bf,$G["table_style"]).checkbox("auto_increment",1,$G["auto_increment"],lang(94)).(support("trigger")?checkbox("triggers",1,$G["triggers"],lang(111)):""),"<tr><th>".lang(119)."<td>".html_select('data_style',$mb,$G["data_style"]),'</table>
- <p><input type="submit" value="',lang(114),'">
- <table cellspacing="0">
- ';$we=array();if(DB!=""){$Oa=($a!=""?"":" checked");echo"<thead><tr>","<th style='text-align: left;'><label><input type='checkbox' id='check-tables'$Oa onclick='formCheck(this, /^tables\\[/);'>".lang(79)."</label>","<th style='text-align: right;'><label>".lang(119)."<input type='checkbox' id='check-data'$Oa onclick='formCheck(this, /^data\\[/);'></label>","</thead>\n";$Y="";foreach(table_status()as$O){$_=$O["Name"];$ve=ereg_replace("_.*","",$_);$Oa=($a==""||$a==(substr($a,-1)=="%"?"$ve%":$_));$ze="<tr><td>".checkbox("tables[]",$_,$Oa,$_,"checkboxClick(event, this); formUncheck('check-tables');");if(is_view($O))$Y.="$ze\n";else
- echo"$ze<td align='right'><label>".($O["Engine"]=="InnoDB"&&$O["Rows"]?"~ ":"").$O["Rows"].checkbox("data[]",$_,$Oa,"","checkboxClick(event, this); formUncheck('check-data');")."</label>\n";$we[$ve]++;}echo$Y;}else{echo"<thead><tr><th style='text-align: left;'><label><input type='checkbox' id='check-databases'".($a==""?" checked":"")." onclick='formCheck(this, /^databases\\[/);'>".lang(24)."</label></thead>\n";$i=$b->databases();if($i){foreach($i
- as$j){if(!information_schema($j)){$ve=ereg_replace("_.*","",$j);echo"<tr><td>".checkbox("databases[]",$j,$a==""||$a=="$ve%",$j,"formUncheck('check-databases');")."</label>\n";$we[$ve]++;}}}else
- echo"<tr><td><textarea name='databases' rows='10' cols='20'></textarea>";}echo'</table>
- </form>
- ';$gc=true;foreach($we
- as$v=>$W){if($v!=""&&$W>1){echo($gc?"<p>":" ")."<a href='".h(ME)."dump=".urlencode("$v%")."'>".h($v)."</a>";$gc=false;}}}elseif(isset($_GET["privileges"])){page_header(lang(53));$E=$g->query("SELECT User, Host FROM mysql.".(DB==""?"user":"db WHERE ".q(DB)." LIKE Db")." ORDER BY Host, User");$sc=$E;if(!$E)$E=$g->query("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1) AS User, SUBSTRING_INDEX(CURRENT_USER, '@', -1) AS Host");echo"<form action=''><p>\n";hidden_fields_get();echo"<input type='hidden' name='db' value='".h(DB)."'>\n",($sc?"":"<input type='hidden' name='grant' value=''>\n"),"<table cellspacing='0'>\n","<thead><tr><th>".lang(22)."<th>".lang(21)."<th> </thead>\n";while($G=$E->fetch_assoc())echo'<tr'.odd().'><td>'.h($G["User"])."<td>".h($G["Host"]).'<td><a href="'.h(ME.'user='.urlencode($G["User"]).'&host='.urlencode($G["Host"])).'">'.lang(33)."</a>\n";if(!$sc||DB!="")echo"<tr".odd()."><td><input name='user'><td><input name='host' value='localhost'><td><input type='submit' value='".lang(33)."'>\n";echo"</table>\n","</form>\n",'<p><a href="'.h(ME).'user=">'.lang(120)."</a>";}elseif(isset($_GET["sql"])){if(!$k&&$_POST["export"]){dump_headers("sql");$b->dumpTable("","");$b->dumpData("","table",$_POST["query"]);exit;}restart_session();$zc=&get_session("queries");$yc=&$zc[DB];if(!$k&&$_POST["clear"]){$yc=array();redirect(remove_from_uri("history"));}page_header(lang(46),$k);if(!$k&&$_POST){$oc=false;$D=$_POST["query"];if($_POST["webfile"]){$oc=@fopen((file_exists("adminer.sql")?"adminer.sql":(file_exists("adminer.sql.gz")?"compress.zlib://adminer.sql.gz":"compress.bzip2://adminer.sql.bz2")),"rb");$D=($oc?fread($oc,1e6):false);}elseif($_FILES&&$_FILES["sql_file"]["error"]!=UPLOAD_ERR_NO_FILE)$D=get_file("sql_file",true);if(is_string($D)){if(function_exists('memory_get_usage'))@ini_set("memory_limit",max(ini_bytes("memory_limit"),2*strlen($D)+memory_get_usage()+8e6));if($D!=""&&strlen($D)<1e6){$C=$D.(ereg(";[ \t\r\n]*\$",$D)?"":";");if(!$yc||reset(end($yc))!=$C)$yc[]=array($C,time());}$kf="(?:\\s|/\\*.*\\*/|(?:#|-- )[^\n]*\n|--\n)";if(!ini_bool("session.use_cookies"))session_write_close();$rb=";";$A=0;$Hb=true;$h=connect();if(is_object($h)&&DB!="")$h->select_db(DB);$Wa=0;$Ob=array();$dd=0;$ie='[\'"'.($u=="sql"?'`#':($u=="sqlite"?'`[':($u=="mssql"?'[':''))).']|/\\*|-- |$'.($u=="pgsql"?'|\\$[^$]*\\$':'');$Pf=microtime();parse_str($_COOKIE["adminer_export"],$qa);$Ab=$b->dumpFormat();unset($Ab["sql"]);while($D!=""){if(!$A&&preg_match("~^$kf*DELIMITER\\s+(\\S+)~i",$D,$z)){$rb=$z[1];$D=substr($D,strlen($z[0]));}else{preg_match('('.preg_quote($rb)."\\s*|$ie)",$D,$z,PREG_OFFSET_CAPTURE,$A);list($mc,$re)=$z[0];if(!$mc&&$oc&&!feof($oc))$D.=fread($oc,1e5);else{if(!$mc&&rtrim($D)=="")break;$A=$re+strlen($mc);if($mc&&rtrim($mc)!=$rb){while(preg_match('('.($mc=='/*'?'\\*/':($mc=='['?']':(ereg('^-- |^#',$mc)?"\n":preg_quote($mc)."|\\\\."))).'|$)s',$D,$z,PREG_OFFSET_CAPTURE,$A)){$Xe=$z[0][0];if(!$Xe&&$oc&&!feof($oc))$D.=fread($oc,1e5);else{$A=$z[0][1]+strlen($Xe);if($Xe[0]!="\\")break;}}}else{$Hb=false;$C=substr($D,0,$re);$Wa++;$ze="<pre id='sql-$Wa'><code class='jush-$u'>".shorten_utf8(trim($C),1000)."</code></pre>\n";if(!$_POST["only_errors"]){echo$ze;ob_flush();flush();}$mf=microtime();if($g->multi_query($C)&&is_object($h)&&preg_match("~^$kf*USE\\b~isU",$C))$h->query($C);do{$E=$g->store_result();$Ib=microtime();$If=format_time($mf,$Ib).(strlen($C)<1000?" <a href='".h(ME)."sql=".urlencode(trim($C))."'>".lang(33)."</a>":"");if($g->error){echo($_POST["only_errors"]?$ze:""),"<p class='error'>".lang(121).": ".error()."\n";$Ob[]=" <a href='#sql-$Wa'>$Wa</a>";if($_POST["error_stops"])break
- 2;}elseif(is_object($E)){$Wd=select($E,$h);if(!$_POST["only_errors"]){echo"<form action='' method='post'>\n","<p>".($E->num_rows?lang(122,$E->num_rows):"").$If;$q="export-$Wa";$Xb=", <a href='#$q' onclick=\"return !toggle('$q');\">".lang(114)."</a><span id='$q' class='hidden'>: ".html_select("output",$b->dumpOutput(),$qa["output"])." ".html_select("format",$Ab,$qa["format"])."<input type='hidden' name='query' value='".h($C)."'>"." <input type='submit' name='export' value='".lang(114)."'><input type='hidden' name='token' value='$Q'></span>\n";if($h&&preg_match("~^($kf|\\()*SELECT\\b~isU",$C)&&($Wb=explain($h,$C))){$q="explain-$Wa";echo", <a href='#$q' onclick=\"return !toggle('$q');\">EXPLAIN</a>$Xb","<div id='$q' class='hidden'>\n";select($Wb,$h,($u=="sql"?"http://dev.mysql.com/doc/refman/".substr($g->server_info,0,3)."/en/explain-output.html#explain_":""),$Wd);echo"</div>\n";}else
- echo$Xb;echo"</form>\n";}}else{if(preg_match("~^$kf*(CREATE|DROP|ALTER)$kf+(DATABASE|SCHEMA)\\b~isU",$C)){restart_session();set_session("dbs",null);session_write_close();}if(!$_POST["only_errors"])echo"<p class='message' title='".h($g->info)."'>".lang(123,$g->affected_rows)."$If\n";}$mf=$Ib;}while($g->next_result());$dd+=substr_count($C.$mc,"\n");$D=substr($D,$A);$A=0;}}}}if($Hb)echo"<p class='message'>".lang(124)."\n";elseif($_POST["only_errors"])echo"<p class='message'>".lang(125,$Wa-count($Ob)).format_time($Pf,microtime())."\n";elseif($Ob&&$Wa>1)echo"<p class='error'>".lang(121).": ".implode("",$Ob)."\n";}else
- echo"<p class='error'>".upload_error($D)."\n";}echo'
- <form action="" method="post" enctype="multipart/form-data" id="form">
- <p>';$C=$_GET["sql"];if($_POST)$C=$_POST["query"];elseif($_GET["history"]=="all")$C=$yc;elseif($_GET["history"]!="")$C=$yc[$_GET["history"]][0];textarea("query",$C,20);echo($_POST?"":"<script type='text/javascript'>document.getElementsByTagName('textarea')[0].focus();</script>\n"),"<p>".(ini_bool("file_uploads")?lang(126).': <input type="file" name="sql_file"'.($_FILES&&$_FILES["sql_file"]["error"]!=4?'':' onchange="this.form[\'only_errors\'].checked = true;"').'> (< '.ini_get("upload_max_filesize").'B)':lang(127)),'<p>
- <input type="submit" value="',lang(128),'" title="Ctrl+Enter">
- <input type="hidden" name="token" value="',$Q,'">
- ',checkbox("error_stops",1,$_POST["error_stops"],lang(129))."\n",checkbox("only_errors",1,$_POST["only_errors"],lang(130))."\n";print_fieldset("webfile",lang(131),$_POST["webfile"],"document.getElementById('form')['only_errors'].checked = true; ");$Za=array();foreach(array("gz"=>"zlib","bz2"=>"bz2")as$v=>$W){if(extension_loaded($W))$Za[]=".$v";}echo
- lang(132,"<code>adminer.sql".($Za?"[".implode("|",$Za)."]":"")."</code>"),' <input type="submit" name="webfile" value="'.lang(133).'">',"</div></fieldset>\n";if($yc){print_fieldset("history",lang(134),$_GET["history"]!="");foreach($yc
- as$v=>$W){list($C,$If)=$W;echo'<a href="'.h(ME."sql=&history=$v").'">'.lang(33)."</a> <span class='time'>".@date("H:i:s",$If)."</span> <code class='jush-$u'>".shorten_utf8(ltrim(str_replace("\n"," ",str_replace("\r","",preg_replace('~^(#|-- ).*~m','',$C)))),80,"</code>")."<br>\n";}echo"<input type='submit' name='clear' value='".lang(135)."'>\n","<a href='".h(ME."sql=&history=all")."'>".lang(136)."</a>\n","</div></fieldset>\n";}echo'
- </form>
- ';}elseif(isset($_GET["edit"])){$a=$_GET["edit"];$Z=(isset($_GET["select"])?(count($_POST["check"])==1?where_check($_POST["check"][0]):""):where($_GET));$gg=(isset($_GET["select"])?$_POST["edit"]:$Z);$m=fields($a);foreach($m
- as$_=>$l){if(!isset($l["privileges"][$gg?"update":"insert"])||$b->fieldName($l)=="")unset($m[$_]);}if($_POST&&!$k&&!isset($_GET["select"])){$fd=$_POST["referer"];if($_POST["insert"])$fd=($gg?null:$_SERVER["REQUEST_URI"]);elseif(!ereg('^.+&select=.+$',$fd))$fd=ME."select=".urlencode($a);if(isset($_POST["delete"]))query_redirect("DELETE".limit1("FROM ".table($a)," WHERE $Z"),$fd,lang(137));else{$K=array();foreach($m
- as$_=>$l){$W=process_input($l);if($W!==false&&$W!==null)$K[idf_escape($_)]=($gg?"\n".idf_escape($_)." = $W":$W);}if($gg){if(!$K)redirect($fd);query_redirect("UPDATE".limit1(table($a)." SET".implode(",",$K),"\nWHERE $Z"),$fd,lang(138));}else{$E=insert_into($a,$K);$Xc=($E?last_id():0);queries_redirect($fd,lang(139,($Xc?" $Xc":"")),$E);}}}$yf=$b->tableName(table_status($a));page_header(($gg?lang(33):lang(140)),$k,array("select"=>array($a,$yf)),$yf);$G=null;if($_POST["save"])$G=(array)$_POST["fields"];elseif($Z){$I=array();foreach($m
- as$_=>$l){if(isset($l["privileges"]["select"]))$I[]=($_POST["clone"]&&$l["auto_increment"]?"'' AS ":($u=="sql"&&ereg("enum|set",$l["type"])?"1*".idf_escape($_)." AS ":"")).idf_escape($_);}$G=array();if($I){$H=get_rows("SELECT".limit(implode(", ",$I)." FROM ".table($a)," WHERE $Z",(isset($_GET["select"])?2:1)));$G=(isset($_GET["select"])&&count($H)!=1?null:reset($H));}}if($G===false)echo"<p class='error'>".lang(84)."\n";echo'
- <form action="" method="post" enctype="multipart/form-data" id="form">
- ';if($m){echo"<table cellspacing='0' onkeydown='return editingKeydown(event);'>\n";foreach($m
- as$_=>$l){echo"<tr><th>".$b->fieldName($l);$qb=$_GET["set"][bracket_escape($_)];$X=($G!==null?($G[$_]!=""&&$u=="sql"&&ereg("enum|set",$l["type"])?(is_array($G[$_])?array_sum($G[$_]):+$G[$_]):$G[$_]):(!$gg&&$l["auto_increment"]?"":(isset($_GET["select"])?false:($qb!==null?$qb:$l["default"]))));if(!$_POST["save"]&&is_string($X))$X=$b->editVal($X,$l);$o=($_POST["save"]?(string)$_POST["function"][$_]:($gg&&$l["on_update"]=="CURRENT_TIMESTAMP"?"now":($X===false?null:($X!==null?'':'NULL'))));if($l["type"]=="timestamp"&&$X=="CURRENT_TIMESTAMP"){$X="";$o="now";}input($l,$X,$o);echo"\n";}echo"</table>\n";}echo'<p>
- ';if($m){echo"<input type='submit' value='".lang(141)."'>\n";if(!isset($_GET["select"]))echo"<input type='submit' name='insert' value='".($gg?lang(142):lang(143))."' title='Ctrl+Shift+Enter'>\n";}echo($gg?"<input type='submit' name='delete' value='".lang(144)."' onclick=\"return confirm('".lang(0)."');\">\n":($_POST||!$m?"":"<script type='text/javascript'>document.getElementById('form').getElementsByTagName('td')[1].firstChild.focus();</script>\n"));if(isset($_GET["select"]))hidden_fields(array("check"=>(array)$_POST["check"],"clone"=>$_POST["clone"],"all"=>$_POST["all"]));echo'<input type="hidden" name="referer" value="',h(isset($_POST["referer"])?$_POST["referer"]:$_SERVER["HTTP_REFERER"]),'">
- <input type="hidden" name="save" value="1">
- <input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["create"])){$a=$_GET["create"];$je=array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST');$Ke=referencable_primary($a);$kc=array();foreach($Ke
- as$yf=>$l)$kc[str_replace("`","``",$yf)."`".str_replace("`","``",$l["field"])]=$yf;$Zd=array();$ae=array();if($a!=""){$Zd=fields($a);$ae=table_status($a);}if($_POST&&!$_POST["fields"])$_POST["fields"]=array();if($_POST&&!$k&&!$_POST["add"]&&!$_POST["drop_col"]&&!$_POST["up"]&&!$_POST["down"]){if($_POST["drop"])query_redirect("DROP TABLE ".table($a),substr(ME,0,-1),lang(145));else{$m=array();$wa=array();$ig=false;$ic=array();ksort($_POST["fields"]);$Yd=reset($Zd);$ua=" FIRST";foreach($_POST["fields"]as$v=>$l){$n=$kc[$l["type"]];$Xf=($n!==null?$Ke[$n]:$l);if($l["field"]!=""){if(!$l["has_default"])$l["default"]=null;$qb=eregi_replace(" *on update CURRENT_TIMESTAMP","",$l["default"]);if($qb!=$l["default"]){$l["on_update"]="CURRENT_TIMESTAMP";$l["default"]=$qb;}if($v==$_POST["auto_increment_col"])$l["auto_increment"]=true;$De=process_field($l,$Xf);$wa[]=array($l["orig"],$De,$ua);if($De!=process_field($Yd,$Yd)){$m[]=array($l["orig"],$De,$ua);if($l["orig"]!=""||$ua)$ig=true;}if($n!==null)$ic[idf_escape($l["field"])]=($a!=""&&$u!="sqlite"?"ADD":" ")." FOREIGN KEY (".idf_escape($l["field"]).") REFERENCES ".table($kc[$l["type"]])." (".idf_escape($Xf["field"]).")".(ereg("^($Ld)\$",$l["on_delete"])?" ON DELETE $l[on_delete]":"");$ua=" AFTER ".idf_escape($l["field"]);}elseif($l["orig"]!=""){$ig=true;$m[]=array($l["orig"]);}if($l["orig"]!=""){$Yd=next($Zd);if(!$Yd)$ua="";}}$le="";if(in_array($_POST["partition_by"],$je)){$me=array();if($_POST["partition_by"]=='RANGE'||$_POST["partition_by"]=='LIST'){foreach(array_filter($_POST["partition_names"])as$v=>$W){$X=$_POST["partition_values"][$v];$me[]="\nPARTITION ".idf_escape($W)." VALUES ".($_POST["partition_by"]=='RANGE'?"LESS THAN":"IN").($X!=""?" ($X)":" MAXVALUE");}}$le.="\nPARTITION BY $_POST[partition_by]($_POST[partition])".($me?" (".implode(",",$me)."\n)":($_POST["partitions"]?" PARTITIONS ".(+$_POST["partitions"]):""));}elseif($a!=""&&support("partitioning"))$le.="\nREMOVE PARTITIONING";$qd=lang(146);if($a==""){cookie("adminer_engine",$_POST["Engine"]);$qd=lang(147);}$_=trim($_POST["name"]);queries_redirect(ME."table=".urlencode($_),$qd,alter_table($a,$_,($u=="sqlite"&&($ig||$ic)?$wa:$m),$ic,$_POST["Comment"],($_POST["Engine"]&&$_POST["Engine"]!=$ae["Engine"]?$_POST["Engine"]:""),($_POST["Collation"]&&$_POST["Collation"]!=$ae["Collation"]?$_POST["Collation"]:""),($_POST["Auto_increment"]!=""?+$_POST["Auto_increment"]:""),$le));}}page_header(($a!=""?lang(30):lang(148)),$k,array("table"=>$a),$a);$G=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($T["int"])?"int":(isset($T["integer"])?"integer":"")))),"partition_names"=>array(""),);if($_POST){$G=$_POST;if($G["auto_increment_col"])$G["fields"][$G["auto_increment_col"]]["auto_increment"]=true;process_fields($G["fields"]);}elseif($a!=""){$G=$ae;$G["name"]=$a;$G["fields"]=array();if(!$_GET["auto_increment"])$G["Auto_increment"]="";foreach($Zd
- as$l){$l["has_default"]=isset($l["default"]);if($l["on_update"])$l["default"].=" ON UPDATE $l[on_update]";$G["fields"][]=$l;}if(support("partitioning")){$pc="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($a);$E=$g->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $pc ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($G["partition_by"],$G["partitions"],$G["partition"])=$E->fetch_row();$G["partition_names"]=array();$G["partition_values"]=array();foreach(get_rows("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $pc AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION")as$We){$G["partition_names"][]=$We["PARTITION_NAME"];$G["partition_values"][]=$We["PARTITION_DESCRIPTION"];}$G["partition_names"][]="";}}$Ta=collations();$tf=floor(extension_loaded("suhosin")?(min(ini_get("suhosin.request.max_vars"),ini_get("suhosin.post.max_vars"))-13)/10:0);if($tf&&count($G["fields"])>$tf)echo"<p class='error'>".h(lang(149,'suhosin.post.max_vars','suhosin.request.max_vars'))."\n";$Kb=engines();foreach($Kb
- as$Jb){if(!strcasecmp($Jb,$G["Engine"])){$G["Engine"]=$Jb;break;}}echo'
- <form action="" method="post" id="form">
- <p>
- ',lang(150),': <input name="name" maxlength="64" value="',h($G["name"]),'">
- ';if($a==""&&!$_POST){?><script type='text/javascript'>document.getElementById('form')['name'].focus();</script><?php }echo($Kb?html_select("Engine",array(""=>"(".lang(151).")")+$Kb,$G["Engine"]):""),' ',($Ta&&!ereg("sqlite|mssql",$u)?html_select("Collation",array(""=>"(".lang(87).")")+$Ta,$G["Collation"]):""),' <input type="submit" value="',lang(141),'">
- <table cellspacing="0" id="edit-fields" class="nowrap">
- ';$Ya=($_POST?$_POST["comments"]:$G["Comment"]!="");if(!$_POST&&!$Ya){foreach($G["fields"]as$l){if($l["comment"]!=""){$Ya=true;break;}}}edit_fields($G["fields"],$Ta,"TABLE",$tf,$kc,$Ya);echo'</table>
- <p>
- ',lang(94),': <input name="Auto_increment" size="6" value="',h($G["Auto_increment"]),'">
- <label class="jsonly"><input type="checkbox" name="defaults" value="1"',($_POST["defaults"]?" checked":""),' onclick="columnShow(this.checked, 5);">',lang(95),'</label>
- ',(support("comment")?checkbox("comments",1,$Ya,lang(96),"columnShow(this.checked, 6); toggle('Comment'); if (this.checked) this.form['Comment'].focus();",true).' <input id="Comment" name="Comment" value="'.h($G["Comment"]).'" maxlength="60"'.($Ya?'':' class="hidden"').'>':''),'<p>
- <input type="submit" value="',lang(141),'">
- ';if($_GET["create"]!=""){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$Q,'">
- ';if(support("partitioning")){$ke=ereg('RANGE|LIST',$G["partition_by"]);print_fieldset("partition",lang(152),$G["partition_by"]);echo'<p>
- ',html_select("partition_by",array(-1=>"")+$je,$G["partition_by"],"partitionByChange(this);"),'(<input name="partition" value="',h($G["partition"]),'">)
- ',lang(153),': <input name="partitions" size="2" value="',h($G["partitions"]),'"',($ke||!$G["partition_by"]?" class='hidden'":""),'>
- <table cellspacing="0" id="partition-table"',($ke?"":" class='hidden'"),'>
- <thead><tr><th>',lang(154),'<th>',lang(155),'</thead>
- ';foreach($G["partition_names"]as$v=>$W){echo'<tr>','<td><input name="partition_names[]" value="'.h($W).'"'.($v==count($G["partition_names"])-1?' onchange="partitionNameChange(this);"':'').'>','<td><input name="partition_values[]" value="'.h($G["partition_values"][$v]).'">';}echo'</table>
- </div></fieldset>
- ';}echo'</form>
- ';}elseif(isset($_GET["indexes"])){$a=$_GET["indexes"];$Ec=array("PRIMARY","UNIQUE","INDEX");$O=table_status($a);if(eregi("MyISAM|M?aria",$O["Engine"]))$Ec[]="FULLTEXT";$t=indexes($a);if($u=="sqlite"){unset($Ec[0]);unset($t[""]);}if($_POST&&!$k&&!$_POST["add"]){$c=array();foreach($_POST["indexes"]as$s){$_=$s["name"];if(in_array($s["type"],$Ec)){$f=array();$cd=array();$K=array();ksort($s["columns"]);foreach($s["columns"]as$v=>$e){if($e!=""){$w=$s["lengths"][$v];$K[]=idf_escape($e).($w?"(".(+$w).")":"");$f[]=$e;$cd[]=($w?$w:null);}}if($f){$Vb=$t[$_];if($Vb){ksort($Vb["columns"]);ksort($Vb["lengths"]);if($s["type"]==$Vb["type"]&&array_values($Vb["columns"])===$f&&(!$Vb["lengths"]||array_values($Vb["lengths"])===$cd)){unset($t[$_]);continue;}}$c[]=array($s["type"],$_,"(".implode(", ",$K).")");}}}foreach($t
- as$_=>$Vb)$c[]=array($Vb["type"],$_,"DROP");if(!$c)redirect(ME."table=".urlencode($a));queries_redirect(ME."table=".urlencode($a),lang(156),alter_indexes($a,$c));}page_header(lang(104),$k,array("table"=>$a),$a);$m=array_keys(fields($a));$G=array("indexes"=>$t);if($_POST){$G=$_POST;if($_POST["add"]){foreach($G["indexes"]as$v=>$s){if($s["columns"][count($s["columns"])]!="")$G["indexes"][$v]["columns"][]="";}$s=end($G["indexes"]);if($s["type"]||array_filter($s["columns"],'strlen')||array_filter($s["lengths"],'strlen'))$G["indexes"][]=array("columns"=>array(1=>""));}}else{foreach($G["indexes"]as$v=>$s){$G["indexes"][$v]["name"]=$v;$G["indexes"][$v]["columns"][]="";}$G["indexes"][]=array("columns"=>array(1=>""));}echo'
- <form action="" method="post">
- <table cellspacing="0" class="nowrap">
- <thead><tr><th>',lang(157),'<th>',lang(158),'<th>',lang(159),'</thead>
- ';$Oc=1;foreach($G["indexes"]as$s){echo"<tr><td>".html_select("indexes[$Oc][type]",array(-1=>"")+$Ec,$s["type"],($Oc==count($G["indexes"])?"indexesAddRow(this);":1))."<td>";ksort($s["columns"]);$p=1;foreach($s["columns"]as$v=>$e){echo"<span>".html_select("indexes[$Oc][columns][$p]",array(-1=>"")+$m,$e,($p==count($s["columns"])?"indexesAddColumn":"indexesChangeColumn")."(this, '".js_escape($u=="sql"?"":$_GET["indexes"]."_")."');"),"<input name='indexes[$Oc][lengths][$p]' size='2' value='".h($s["lengths"][$v])."'> </span>";$p++;}echo"<td><input name='indexes[$Oc][name]' value='".h($s["name"])."'>\n";$Oc++;}echo'</table>
- <p>
- <input type="submit" value="',lang(141),'">
- <noscript><p><input type="submit" name="add" value="',lang(97),'"></noscript>
- <input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["database"])){if($_POST&&!$k&&!isset($_POST["add_x"])){restart_session();$_=trim($_POST["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(160),drop_databases(array(DB)));}elseif(DB!==$_){if(DB!=""){$_GET["db"]=$_;queries_redirect(preg_replace('~db=[^&]*&~','',ME)."db=".urlencode($_),lang(161),rename_database($_,$_POST["collation"]));}else{$i=explode("\n",str_replace("\r","",$_));$rf=true;$Wc="";foreach($i
- as$j){if(count($i)==1||$j!=""){if(!create_database($j,$_POST["collation"]))$rf=false;$Wc=$j;}}queries_redirect(ME."db=".urlencode($Wc),lang(162),$rf);}}else{if(!$_POST["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($_).(eregi('^[a-z0-9_]+$',$_POST["collation"])?" COLLATE $_POST[collation]":""),substr(ME,0,-1),lang(163));}}page_header(DB!=""?lang(49):lang(164),$k,array(),DB);$Ta=collations();$_=DB;$Sa=null;if($_POST){$_=$_POST["name"];$Sa=$_POST["collation"];}elseif(DB!="")$Sa=db_collation(DB,$Ta);elseif($u=="sql"){foreach(get_vals("SHOW GRANTS")as$sc){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\\.\\*)?~',$sc,$z)&&$z[1]){$_=stripcslashes(idf_unescape("`$z[2]`"));break;}}}echo'
- <form action="" method="post">
- <p>
- ',($_POST["add_x"]||strpos($_,"\n")?'<textarea id="name" name="name" rows="10" cols="40">'.h($_).'</textarea><br>':'<input id="name" name="name" value="'.h($_).'" maxlength="64">')."\n".($Ta?html_select("collation",array(""=>"(".lang(87).")")+$Ta,$Sa):"");?>
- <script type='text/javascript'>document.getElementById('name').focus();</script>
- <input type="submit" value="<?php echo
- lang(141),'">
- ';if(DB!="")echo"<input type='submit' name='drop' value='".lang(80)."'".confirm().">\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"<input type='image' name='add' src='".h(preg_replace("~\\?.*~","",ME))."?file=plus.gif&version=3.5.1' alt='+' title='".lang(97)."'>\n";echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["scheme"])){if($_POST&&!$k){$y=preg_replace('~ns=[^&]*&~','',ME)."ns=";if($_POST["drop"])query_redirect("DROP SCHEMA ".idf_escape($_GET["ns"]),$y,lang(165));else{$_=trim($_POST["name"]);$y.=urlencode($_);if($_GET["ns"]=="")query_redirect("CREATE SCHEMA ".idf_escape($_),$y,lang(166));elseif($_GET["ns"]!=$_)query_redirect("ALTER SCHEMA ".idf_escape($_GET["ns"])." RENAME TO ".idf_escape($_),$y,lang(167));else
- redirect($y);}}page_header($_GET["ns"]!=""?lang(50):lang(51),$k);$G=$_POST;if(!$G)$G=array("name"=>$_GET["ns"]);echo'
- <form action="" method="post">
- <p><input id="name" name="name" value="',h($G["name"]);?>">
- <script type='text/javascript'>document.getElementById('name').focus();</script>
- <input type="submit" value="<?php echo
- lang(141),'">
- ';if($_GET["ns"]!="")echo"<input type='submit' name='drop' value='".lang(80)."'".confirm().">\n";echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["call"])){$da=$_GET["call"];page_header(lang(168).": ".h($da),$k);$Te=routine($da,(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$Dc=array();$ce=array();foreach($Te["fields"]as$p=>$l){if(substr($l["inout"],-3)=="OUT")$ce[$p]="@".idf_escape($l["field"])." AS ".idf_escape($l["field"]);if(!$l["inout"]||substr($l["inout"],0,2)=="IN")$Dc[]=$p;}if(!$k&&$_POST){$La=array();foreach($Te["fields"]as$v=>$l){if(in_array($v,$Dc)){$W=process_input($l);if($W===false)$W="''";if(isset($ce[$v]))$g->query("SET @".idf_escape($l["field"])." = $W");}$La[]=(isset($ce[$v])?"@".idf_escape($l["field"]):$W);}$D=(isset($_GET["callf"])?"SELECT":"CALL")." ".idf_escape($da)."(".implode(", ",$La).")";echo"<p><code class='jush-$u'>".h($D)."</code> <a href='".h(ME)."sql=".urlencode($D)."'>".lang(33)."</a>\n";if(!$g->multi_query($D))echo"<p class='error'>".error()."\n";else{$h=connect();if(is_object($h))$h->select_db(DB);do{$E=$g->store_result();if(is_object($E))select($E,$h);else
- echo"<p class='message'>".lang(169,$g->affected_rows)."\n";}while($g->next_result());if($ce)select($g->query("SELECT ".implode(", ",$ce)));}}echo'
- <form action="" method="post">
- ';if($Dc){echo"<table cellspacing='0'>\n";foreach($Dc
- as$v){$l=$Te["fields"][$v];$_=$l["field"];echo"<tr><th>".$b->fieldName($l);$X=$_POST["fields"][$_];if($X!=""){if($l["type"]=="enum")$X=+$X;if($l["type"]=="set")$X=array_sum($X);}input($l,$X,(string)$_POST["function"][$_]);echo"\n";}echo"</table>\n";}echo'<p>
- <input type="submit" value="',lang(168),'">
- <input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["foreign"])){$a=$_GET["foreign"];if($_POST&&!$k&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){if($_POST["drop"])query_redirect("ALTER TABLE ".table($a)."\nDROP ".($u=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($_GET["name"]),ME."table=".urlencode($a),lang(170));else{$jf=array_filter($_POST["source"],'strlen');ksort($jf);$Ef=array();foreach($jf
- as$v=>$W)$Ef[$v]=$_POST["target"][$v];query_redirect("ALTER TABLE ".table($a).($_GET["name"]!=""?"\nDROP ".($u=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($_GET["name"]).",":"")."\nADD FOREIGN KEY (".implode(", ",array_map('idf_escape',$jf)).") REFERENCES ".table($_POST["table"])." (".implode(", ",array_map('idf_escape',$Ef)).")".(ereg("^($Ld)\$",$_POST["on_delete"])?" ON DELETE $_POST[on_delete]":"").(ereg("^($Ld)\$",$_POST["on_update"])?" ON UPDATE $_POST[on_update]":""),ME."table=".urlencode($a),($_GET["name"]!=""?lang(171):lang(172)));$k=lang(173)."<br>$k";}}page_header(lang(174),$k,array("table"=>$a),$a);$G=array("table"=>$a,"source"=>array(""));if($_POST){$G=$_POST;ksort($G["source"]);if($_POST["add"])$G["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$G["target"]=array();}elseif($_GET["name"]!=""){$kc=foreign_keys($a);$G=$kc[$_GET["name"]];$G["source"][]="";}$jf=array_keys(fields($a));$Ef=($a===$G["table"]?$jf:array_keys(fields($G["table"])));$Je=array();foreach(table_status()as$_=>$O){if(fk_support($O))$Je[]=$_;}echo'
- <form action="" method="post">
- <p>
- ';if($G["db"]==""&&$G["ns"]==""){echo
- lang(175),':
- ',html_select("table",$Je,$G["table"],"this.form['change-js'].value = '1'; this.form.submit();"),'<input type="hidden" name="change-js" value="">
- <noscript><p><input type="submit" name="change" value="',lang(176),'"></noscript>
- <table cellspacing="0">
- <thead><tr><th>',lang(106),'<th>',lang(107),'</thead>
- ';$Oc=0;foreach($G["source"]as$v=>$W){echo"<tr>","<td>".html_select("source[".(+$v)."]",array(-1=>"")+$jf,$W,($Oc==count($G["source"])-1?"foreignAddRow(this);":1)),"<td>".html_select("target[".(+$v)."]",$Ef,$G["target"][$v]);$Oc++;}echo'</table>
- <p>
- ',lang(88),': ',html_select("on_delete",array(-1=>"")+explode("|",$Ld),$G["on_delete"]),' ',lang(108),': ',html_select("on_update",array(-1=>"")+explode("|",$Ld),$G["on_update"]),'<p>
- <input type="submit" value="',lang(141),'">
- <noscript><p><input type="submit" name="add" value="',lang(177),'"></noscript>
- ';}if($_GET["name"]!=""){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["view"])){$a=$_GET["view"];$zb=false;if($_POST&&!$k){$_=trim($_POST["name"]);$zb=drop_create("DROP VIEW ".table($a),"CREATE VIEW ".table($_)." AS\n$_POST[select]",($_POST["drop"]?substr(ME,0,-1):ME."table=".urlencode($_)),lang(178),lang(179),lang(180),$a);}page_header(($a!=""?lang(29):lang(181)),$k,array("table"=>$a),$a);$G=$_POST;if(!$G&&$a!=""){$G=view($a);$G["name"]=$a;}echo'
- <form action="" method="post">
- <p>',lang(159),': <input name="name" value="',h($G["name"]),'" maxlength="64">
- <p>';textarea("select",$G["select"]);echo'<p>
- ';if($zb){echo'<input type="hidden" name="dropped" value="1">';}echo'<input type="submit" value="',lang(141),'">
- ';if($_GET["view"]!=""){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$Lc=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$of=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");if($_POST&&!$k){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(182));elseif(in_array($_POST["INTERVAL_FIELD"],$Lc)&&isset($of[$_POST["STATUS"]])){$Ye="\nON SCHEDULE ".($_POST["INTERVAL_VALUE"]?"EVERY ".q($_POST["INTERVAL_VALUE"])." $_POST[INTERVAL_FIELD]".($_POST["STARTS"]?" STARTS ".q($_POST["STARTS"]):"").($_POST["ENDS"]?" ENDS ".q($_POST["ENDS"]):""):"AT ".q($_POST["STARTS"]))." ON COMPLETION".($_POST["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(183):lang(184)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$Ye.($aa!=$_POST["EVENT_NAME"]?"\nRENAME TO ".idf_escape($_POST["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($_POST["EVENT_NAME"]).$Ye)."\n".$of[$_POST["STATUS"]]." COMMENT ".q($_POST["EVENT_COMMENT"]).rtrim(" DO\n$_POST[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(185).": ".h($aa):lang(186)),$k);$G=$_POST;if(!$G&&$aa!=""){$H=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$G=reset($H);}echo'
- <form action="" method="post">
- <table cellspacing="0">
- <tr><th>',lang(159),'<td><input name="EVENT_NAME" value="',h($G["EVENT_NAME"]),'" maxlength="64">
- <tr><th>',lang(187),'<td><input name="STARTS" value="',h("$G[EXECUTE_AT]$G[STARTS]"),'">
- <tr><th>',lang(188),'<td><input name="ENDS" value="',h($G["ENDS"]),'">
- <tr><th>',lang(189),'<td><input name="INTERVAL_VALUE" value="',h($G["INTERVAL_VALUE"]),'" size="6"> ',html_select("INTERVAL_FIELD",$Lc,$G["INTERVAL_FIELD"]),'<tr><th>',lang(75),'<td>',html_select("STATUS",$of,$G["STATUS"]),'<tr><th>',lang(96),'<td><input name="EVENT_COMMENT" value="',h($G["EVENT_COMMENT"]),'" maxlength="64">
- <tr><th> <td>',checkbox("ON_COMPLETION","PRESERVE",$G["ON_COMPLETION"]=="PRESERVE",lang(190)),'</table>
- <p>';textarea("EVENT_DEFINITION",$G["EVENT_DEFINITION"]);echo'<p>
- <input type="submit" value="',lang(141),'">
- ';if($aa!=""){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["procedure"])){$da=$_GET["procedure"];$Te=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$Ue=routine_languages();$zb=false;if($_POST&&!$k&&!$_POST["add"]&&!$_POST["drop_col"]&&!$_POST["up"]&&!$_POST["down"]){$K=array();$m=(array)$_POST["fields"];ksort($m);foreach($m
- as$l){if($l["field"]!="")$K[]=(ereg("^($Ic)\$",$l["inout"])?"$l[inout] ":"").idf_escape($l["field"]).process_type($l,"CHARACTER SET");}$zb=drop_create("DROP $Te ".idf_escape($da),"CREATE $Te ".idf_escape(trim($_POST["name"]))." (".implode(", ",$K).")".(isset($_GET["function"])?" RETURNS".process_type($_POST["returns"],"CHARACTER SET"):"").(in_array($_POST["language"],$Ue)?" LANGUAGE $_POST[language]":"").rtrim("\n$_POST[definition]",";").";",substr(ME,0,-1),lang(191),lang(192),lang(193),$da);}page_header(($da!=""?(isset($_GET["function"])?lang(194):lang(195)).": ".h($da):(isset($_GET["function"])?lang(196):lang(197))),$k);$Ta=get_vals("SHOW CHARACTER SET");sort($Ta);$G=array("fields"=>array());if($_POST){$G=$_POST;$G["fields"]=(array)$G["fields"];process_fields($G["fields"]);}elseif($da!=""){$G=routine($da,$Te);$G["name"]=$da;}echo'
- <form action="" method="post" id="form">
- <p>',lang(159),': <input name="name" value="',h($G["name"]),'" maxlength="64">
- ',($Ue?lang(8).": ".html_select("language",$Ue,$G["language"]):""),'<table cellspacing="0" class="nowrap">
- ';edit_fields($G["fields"],$Ta,$Te);if(isset($_GET["function"])){echo"<tr><td>".lang(198);edit_type("returns",$G["returns"],$Ta);}echo'</table>
- <p>';textarea("definition",$G["definition"]);echo'<p>
- <input type="submit" value="',lang(141),'">
- ';if($da!=""){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}if($zb){echo'<input type="hidden" name="dropped" value="1">';}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["sequence"])){$fa=$_GET["sequence"];if($_POST&&!$k){$y=substr(ME,0,-1);$_=trim($_POST["name"]);if($_POST["drop"])query_redirect("DROP SEQUENCE ".idf_escape($fa),$y,lang(199));elseif($fa=="")query_redirect("CREATE SEQUENCE ".idf_escape($_),$y,lang(200));elseif($fa!=$_)query_redirect("ALTER SEQUENCE ".idf_escape($fa)." RENAME TO ".idf_escape($_),$y,lang(201));else
- redirect($y);}page_header($fa!=""?lang(202).": ".h($fa):lang(203),$k);$G=$_POST;if(!$G)$G=array("name"=>$fa);echo'
- <form action="" method="post">
- <p><input name="name" value="',h($G["name"]),'">
- <input type="submit" value="',lang(141),'">
- ';if($fa!="")echo"<input type='submit' name='drop' value='".lang(80)."'".confirm().">\n";echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["type"])){$ga=$_GET["type"];if($_POST&&!$k){$y=substr(ME,0,-1);if($_POST["drop"])query_redirect("DROP TYPE ".idf_escape($ga),$y,lang(204));else
- query_redirect("CREATE TYPE ".idf_escape(trim($_POST["name"]))." $_POST[as]",$y,lang(205));}page_header($ga!=""?lang(206).": ".h($ga):lang(207),$k);$G=$_POST;if(!$G)$G=array("as"=>"AS ");echo'
- <form action="" method="post">
- <p>
- ';if($ga!="")echo"<input type='submit' name='drop' value='".lang(80)."'".confirm().">\n";else{echo"<input name='name' value='".h($G['name'])."'>\n";textarea("as",$G["as"]);echo"<p><input type='submit' value='".lang(141)."'>\n";}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["trigger"])){$a=$_GET["trigger"];$Vf=trigger_options();$Tf=array("INSERT","UPDATE","DELETE");$zb=false;if($_POST&&!$k&&in_array($_POST["Timing"],$Vf["Timing"])&&in_array($_POST["Event"],$Tf)&&in_array($_POST["Type"],$Vf["Type"])){$Jf=" $_POST[Timing] $_POST[Event]";$Kd=" ON ".table($a);$zb=drop_create("DROP TRIGGER ".idf_escape($_GET["name"]).($u=="pgsql"?$Kd:""),"CREATE TRIGGER ".idf_escape($_POST["Trigger"]).($u=="mssql"?$Kd.$Jf:$Jf.$Kd).rtrim(" $_POST[Type]\n$_POST[Statement]",";").";",ME."table=".urlencode($a),lang(208),lang(209),lang(210),$_GET["name"]);}page_header(($_GET["name"]!=""?lang(211).": ".h($_GET["name"]):lang(212)),$k,array("table"=>$a));$G=$_POST;if(!$G)$G=trigger($_GET["name"])+array("Trigger"=>$a."_bi");echo'
- <form action="" method="post" id="form">
- <table cellspacing="0">
- <tr><th>',lang(213),'<td>',html_select("Timing",$Vf["Timing"],$G["Timing"],"if (/^".preg_quote($a,"/")."_[ba][iud]$/.test(this.form['Trigger'].value)) this.form['Trigger'].value = '".js_escape($a)."_' + selectValue(this).charAt(0).toLowerCase() + selectValue(this.form['Event']).charAt(0).toLowerCase();"),'<tr><th>',lang(214),'<td>',html_select("Event",$Tf,$G["Event"],"this.form['Timing'].onchange();"),'<tr><th>',lang(91),'<td>',html_select("Type",$Vf["Type"],$G["Type"]),'</table>
- <p>',lang(159),': <input name="Trigger" value="',h($G["Trigger"]),'" maxlength="64">
- <p>';textarea("Statement",$G["Statement"]);echo'<p>
- <input type="submit" value="',lang(141),'">
- ';if($_GET["name"]!=""){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}if($zb){echo'<input type="hidden" name="dropped" value="1">';}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["user"])){$ha=$_GET["user"];$Be=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$G){foreach(explode(",",($G["Privilege"]=="Grant option"?"":$G["Context"]))as$db)$Be[$db][$G["Privilege"]]=$G["Comment"];}$Be["Server Admin"]+=$Be["File access on server"];$Be["Databases"]["Create routine"]=$Be["Procedures"]["Create routine"];unset($Be["Procedures"]["Create routine"]);$Be["Columns"]=array();foreach(array("Select","Insert","Update","References")as$W)$Be["Columns"][$W]=$Be["Tables"][$W];unset($Be["Server Admin"]["Usage"]);foreach($Be["Tables"]as$v=>$W)unset($Be["Databases"][$v]);$Bd=array();if($_POST){foreach($_POST["objects"]as$v=>$W)$Bd[$W]=(array)$Bd[$W]+(array)$_POST["grants"][$v];}$tc=array();$Id="";if(isset($_GET["host"])&&($E=$g->query("SHOW GRANTS FOR ".q($ha)."@".q($_GET["host"])))){while($G=$E->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$G[0],$z)&&preg_match_all('~ *([^(,]*[^ ,(])( *\\([^)]+\\))?~',$z[1],$jd,PREG_SET_ORDER)){foreach($jd
- as$W){if($W[1]!="USAGE")$tc["$z[2]$W[2]"][$W[1]]=true;if(ereg(' WITH GRANT OPTION',$G[0]))$tc["$z[2]$W[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$G[0],$z))$Id=$z[1];}}if($_POST&&!$k){$Jd=(isset($_GET["host"])?q($ha)."@".q($_GET["host"]):"''");$Cd=q($_POST["user"])."@".q($_POST["host"]);$ne=q($_POST["pass"]);if($_POST["drop"])query_redirect("DROP USER $Jd",ME."privileges=",lang(215));else{$ib=false;if($Jd!=$Cd){$ib=queries(($g->server_info<5?"GRANT USAGE ON *.* TO":"CREATE USER")." $Cd IDENTIFIED BY".($_POST["hashed"]?" PASSWORD":"")." $ne");$k=!$ib;}elseif($_POST["pass"]!=$Id||!$_POST["hashed"])queries("SET PASSWORD FOR $Cd = ".($_POST["hashed"]?$ne:"PASSWORD($ne)"));if(!$k){$Qe=array();foreach($Bd
- as$Fd=>$sc){if(isset($_GET["grant"]))$sc=array_filter($sc);$sc=array_keys($sc);if(isset($_GET["grant"]))$Qe=array_diff(array_keys(array_filter($Bd[$Fd],'strlen')),$sc);elseif($Jd==$Cd){$Hd=array_keys((array)$tc[$Fd]);$Qe=array_diff($Hd,$sc);$sc=array_diff($sc,$Hd);unset($tc[$Fd]);}if(preg_match('~^(.+)\\s*(\\(.*\\))?$~U',$Fd,$z)&&(!grant("REVOKE",$Qe,$z[2]," ON $z[1] FROM $Cd")||!grant("GRANT",$sc,$z[2]," ON $z[1] TO $Cd"))){$k=true;break;}}}if(!$k&&isset($_GET["host"])){if($Jd!=$Cd)queries("DROP USER $Jd");elseif(!isset($_GET["grant"])){foreach($tc
- as$Fd=>$Qe){if(preg_match('~^(.+)(\\(.*\\))?$~U',$Fd,$z))grant("REVOKE",array_keys($Qe),$z[2]," ON $z[1] FROM $Cd");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(216):lang(217)),!$k);if($ib)$g->query("DROP USER $Cd");}}page_header((isset($_GET["host"])?lang(22).": ".h("$ha@$_GET[host]"):lang(120)),$k,array("privileges"=>array('',lang(53))));if($_POST){$G=$_POST;$tc=$Bd;}else{$G=$_GET+array("host"=>$g->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$G["pass"]=$Id;if($Id!="")$G["hashed"]=true;$tc[(DB!=""&&!isset($_GET["host"])?idf_escape(addcslashes(DB,"%_")):"").".*"]=array();}echo'<form action="" method="post">
- <table cellspacing="0">
- <tr><th>',lang(21),'<td><input name="host" maxlength="60" value="',h($G["host"]),'">
- <tr><th>',lang(22),'<td><input name="user" maxlength="16" value="',h($G["user"]),'">
- <tr><th>',lang(23),'<td><input id="pass" name="pass" value="',h($G["pass"]),'">
- ';if(!$G["hashed"]){echo'<script type="text/javascript">typePassword(document.getElementById(\'pass\'));</script>';}echo
- checkbox("hashed",1,$G["hashed"],lang(218),"typePassword(this.form['pass'], this.checked);"),'</table>
- ';echo"<table cellspacing='0'>\n","<thead><tr><th colspan='2'><a href='http://dev.mysql.com/doc/refman/".substr($g->server_info,0,3)."/en/grant.html#priv_level' target='_blank' rel='noreferrer'>".lang(53)."</a>";$p=0;foreach($tc
- as$Fd=>$sc){echo'<th>'.($Fd!="*.*"?"<input name='objects[$p]' value='".h($Fd)."' size='10'>":"<input type='hidden' name='objects[$p]' value='*.*' size='10'>*.*");$p++;}echo"</thead>\n";foreach(array(""=>"","Server Admin"=>lang(21),"Databases"=>lang(24),"Tables"=>lang(102),"Columns"=>lang(103),"Procedures"=>lang(219),)as$db=>$sb){foreach((array)$Be[$db]as$Ae=>$Xa){echo"<tr".odd()."><td".($sb?">$sb<td":" colspan='2'").' lang="en" title="'.h($Xa).'">'.h($Ae);$p=0;foreach($tc
- as$Fd=>$sc){$_="'grants[$p][".h(strtoupper($Ae))."]'";$X=$sc[strtoupper($Ae)];if($db=="Server Admin"&&$Fd!=(isset($tc["*.*"])?"*.*":".*"))echo"<td> ";elseif(isset($_GET["grant"]))echo"<td><select name=$_><option><option value='1'".($X?" selected":"").">".lang(220)."<option value='0'".($X=="0"?" selected":"").">".lang(221)."</select>";else
- echo"<td align='center'><input type='checkbox' name=$_ value='1'".($X?" checked":"").($Ae=="All privileges"?" id='grants-$p-all'":($Ae=="Grant option"?"":" onclick=\"if (this.checked) formUncheck('grants-$p-all');\"")).">";$p++;}}}echo"</table>\n",'<p>
- <input type="submit" value="',lang(141),'">
- ';if(isset($_GET["host"])){echo'<input type="submit" name="drop" value="',lang(80),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["processlist"])){if(support("kill")&&$_POST&&!$k){$Tc=0;foreach((array)$_POST["kill"]as$W){if(queries("KILL ".(+$W)))$Tc++;}queries_redirect(ME."processlist=",lang(222,$Tc),$Tc||!$_POST["kill"]);}page_header(lang(73),$k);echo'
- <form action="" method="post">
- <table cellspacing="0" onclick="tableClick(event);" class="nowrap checkable">
- ';$p=-1;foreach(process_list()as$p=>$G){if(!$p)echo"<thead><tr lang='en'>".(support("kill")?"<th> ":"")."<th>".implode("<th>",array_keys($G))."</thead>\n";echo"<tr".odd().">".(support("kill")?"<td>".checkbox("kill[]",$G["Id"],0):"");foreach($G
- as$v=>$W)echo"<td>".(($u=="sql"&&$v=="Info"&&ereg("Query|Killed",$G["Command"])&&$W!="")||($u=="pgsql"&&$v=="current_query"&&$W!="<IDLE>")||($u=="oracle"&&$v=="sql_text"&&$W!="")?"<code class='jush-$u'>".shorten_utf8($W,100,"</code>").' <a href="'.h(ME.($G["db"]!=""?"db=".urlencode($G["db"])."&":"")."sql=".urlencode($W)).'">'.lang(33).'</a>':nbsp($W));echo"\n";}echo'</table>
- <script type=\'text/javascript\'>tableCheck();</script>
- <p>
- ';if(support("kill")){echo($p+1)."/".lang(223,$g->result("SELECT @@max_connections")),"<p><input type='submit' value='".lang(224)."'>\n";}echo'<input type="hidden" name="token" value="',$Q,'">
- </form>
- ';}elseif(isset($_GET["select"])){$a=$_GET["select"];$O=table_status($a);$t=indexes($a);$m=fields($a);$kc=column_foreign_keys($a);$Gd="";if($O["Oid"]=="t"){$Gd=($u=="sqlite"?"rowid":"oid");$t[]=array("type"=>"PRIMARY","columns"=>array($Gd));}parse_str($_COOKIE["adminer_import"],$ra);$Re=array();$f=array();$Hf=null;foreach($m
- as$v=>$l){$_=$b->fieldName($l);if(isset($l["privileges"]["select"])&&$_!=""){$f[$v]=html_entity_decode(strip_tags($_));if(ereg('text|lob',$l["type"]))$Hf=$b->selectLengthProcess();}$Re+=$l["privileges"];}list($I,$uc)=$b->selectColumnsProcess($f,$t);$Z=$b->selectSearchProcess($m,$t);$Td=$b->selectOrderProcess($m,$t);$x=$b->selectLimitProcess();$pc=($I?implode(", ",$I):($Gd?"$Gd, ":"")."*")."\nFROM ".table($a);$vc=($uc&&count($uc)<count($I)?"\nGROUP BY ".implode(", ",$uc):"").($Td?"\nORDER BY ".implode(", ",$Td):"");if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$cg=>$G)echo$g->result("SELECT".limit(idf_escape(key($G))." FROM ".table($a)," WHERE ".where_check($cg).($Z?" AND ".implode(" AND ",$Z):"").($Td?" ORDER BY ".implode(", ",$Td):""),1));exit;}if($_POST&&!$k){$sg="(".implode(") OR (",array_map('where_check',(array)$_POST["check"])).")";$xe=$eg=null;foreach($t
- as$s){if($s["type"]=="PRIMARY"){$xe=array_flip($s["columns"]);$eg=($I?$xe:array());break;}}foreach((array)$eg
- as$v=>$W){if(in_array(idf_escape($v),$I))unset($eg[$v]);}if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($a);$b->dumpTable($a,"");if(!is_array($_POST["check"])||$eg===array()){$rg=$Z;if(is_array($_POST["check"]))$rg[]="($sg)";$D="SELECT $pc".($rg?"\nWHERE ".implode(" AND ",$rg):"").$vc;}else{$ag=array();foreach($_POST["check"]as$W)$ag[]="(SELECT".limit($pc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($W).$vc,1).")";$D=implode(" UNION ALL ",$ag);}$b->dumpData($a,"table",$D);exit;}if(!$b->selectEmailProcess($Z,$kc)){if($_POST["save"]||$_POST["delete"]){$E=true;$sa=0;$D=table($a);$K=array();if(!$_POST["delete"]){foreach($f
- as$_=>$W){$W=process_input($m[$_]);if($W!==null){if($_POST["clone"])$K[idf_escape($_)]=($W!==false?$W:idf_escape($_));elseif($W!==false)$K[]=idf_escape($_)." = $W";}}$D.=($_POST["clone"]?" (".implode(", ",array_keys($K)).")\nSELECT ".implode(", ",$K)."\nFROM ".table($a):" SET\n".implode(",\n",$K));}if($_POST["delete"]||$K){$Va="UPDATE";if($_POST["delete"]){$Va="DELETE";$D="FROM $D";}if($_POST["clone"]){$Va="INSERT";$D="INTO $D";}if($_POST["all"]||($eg===array()&&$_POST["check"])||count($uc)<count($I)){$E=queries("$Va $D".($_POST["all"]?($Z?"\nWHERE ".implode(" AND ",$Z):""):"\nWHERE $sg"));$sa=$g->affected_rows;}else{foreach((array)$_POST["check"]as$W){$E=queries($Va.limit1($D,"\nWHERE ".where_check($W)));if(!$E)break;$sa+=$g->affected_rows;}}}$qd=lang(225,$sa);if($_POST["clone"]&&$E&&$sa==1){$Xc=last_id();if($Xc)$qd=lang(139," $Xc");}queries_redirect(remove_from_uri("page"),$qd,$E);}elseif(!$_POST["import"]){if(!$_POST["val"])$k=lang(226);else{$E=true;$sa=0;foreach($_POST["val"]as$cg=>$G){$K=array();foreach($G
- as$v=>$W){$v=bracket_escape($v,1);$K[]=idf_escape($v)." = ".(ereg('char|text',$m[$v]["type"])||$W!=""?$b->processInput($m[$v],$W):"NULL");}$D=table($a)." SET ".implode(", ",$K);$rg=" WHERE ".where_check($cg).($Z?" AND ".implode(" AND ",$Z):"");$E=queries("UPDATE".(count($uc)<count($I)?" $D$rg":limit1($D,$rg)));if(!$E)break;$sa+=$g->affected_rows;}queries_redirect(remove_from_uri(),lang(225,$sa),$E);}}elseif(is_string($dc=get_file("csv_file",true))){cookie("adminer_import","output=".urlencode($ra["output"])."&format=".urlencode($_POST["separator"]));$E=true;$Ua=array_keys($m);preg_match_all('~(?>"[^"]*"|[^"\\r\\n]+)+~',$dc,$jd);$sa=count($jd[0]);begin();$ef=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));foreach($jd[0]as$v=>$W){preg_match_all("~((\"[^\"]*\")+|[^$ef]*)$ef~",$W.$ef,$kd);if(!$v&&!array_diff($kd[1],$Ua)){$Ua=$kd[1];$sa--;}else{$K=array();foreach($kd[1]as$p=>$Ra)$K[idf_escape($Ua[$p])]=($Ra==""&&$m[$Ua[$p]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$Ra))));$E=insert_update($a,$K,$xe);if(!$E)break;}}if($E)queries("COMMIT");queries_redirect(remove_from_uri("page"),lang(227,$sa),$E);queries("ROLLBACK");}else$k=upload_error($dc);}}$yf=$b->tableName($O);page_header(lang(35).": $yf",$k);session_write_close();$K=null;if(isset($Re["insert"])){$K="";foreach((array)$_GET["where"]as$W){if(count($kc[$W["col"]])==1&&($W["op"]=="="||(!$W["op"]&&!ereg('[_%]',$W["val"]))))$K.="&set".urlencode("[".bracket_escape($W["col"])."]")."=".urlencode($W["val"]);}}$b->selectLinks($O,$K);if(!$f)echo"<p class='error'>".lang(228).($m?".":": ".error())."\n";else{echo"<form action='' id='form'>\n","<div style='display: none;'>";hidden_fields_get();echo(DB!=""?'<input type="hidden" name="db" value="'.h(DB).'">'.(isset($_GET["ns"])?'<input type="hidden" name="ns" value="'.h($_GET["ns"]).'">':""):"");echo'<input type="hidden" name="select" value="'.h($a).'">',"</div>\n";$b->selectColumnsPrint($I,$f);$b->selectSearchPrint($Z,$f,$t);$b->selectOrderPrint($Td,$f,$t);$b->selectLimitPrint($x);$b->selectLengthPrint($Hf);$b->selectActionPrint($t);echo"</form>\n";$fe=$_GET["page"];if($fe=="last"){$nc=$g->result("SELECT COUNT(*) FROM ".table($a).($Z?" WHERE ".implode(" AND ",$Z):""));$fe=floor(max(0,$nc-1)/$x);}$D="SELECT".limit((+$x&&$uc&&count($uc)<count($I)&&$u=="sql"?"SQL_CALC_FOUND_ROWS ":"").$pc,($Z?"\nWHERE ".implode(" AND ",$Z):"").$vc,($x!=""?+$x:null),($fe?$x*$fe:0),"\n");echo$b->selectQuery($D);$E=$g->query($D);if(!$E)echo"<p class='error'>".error()."\n";else{if($u=="mssql")$E->seek($x*$fe);$Gb=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$H=array();while($G=$E->fetch_assoc()){if($fe&&$u=="oracle")unset($G["RNUM"]);$H[]=$G;}if($_GET["page"]!="last")$nc=(+$x&&$uc&&count($uc)<count($I)?($u=="sql"?$g->result(" SELECT FOUND_ROWS()"):$g->result("SELECT COUNT(*) FROM ($D) x")):count($H));if(!$H)echo"<p class='message'>".lang(84)."\n";else{$Fa=$b->backwardKeys($a,$yf);echo"<table cellspacing='0' class='nowrap checkable' onclick='tableClick(event);' onkeydown='return editingKeydown(event);'>\n","<thead><tr>".(!$uc&&$I?"":"<td><input type='checkbox' id='all-page' onclick='formCheck(this, /check/);'> <a href='".h($_GET["modify"]?remove_from_uri("modify"):$_SERVER["REQUEST_URI"]."&modify=1")."'>".lang(229)."</a>");$Ad=array();$rc=array();reset($I);$Ge=1;foreach($H[0]as$v=>$W){if($v!=$Gd){$W=$_GET["columns"][key($I)];$l=$m[$I?($W?$W["col"]:current($I)):$v];$_=($l?$b->fieldName($l,$Ge):"*");if($_!=""){$Ge++;$Ad[$v]=$_;$e=idf_escape($v);$Ac=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($v);$sb="&desc%5B0%5D=1";echo'<th onmouseover="columnMouse(this);" onmouseout="columnMouse(this, \' hidden\');">','<a href="'.h($Ac.($Td[0]==$e||$Td[0]==$v||(!$Td&&count($uc)<count($I)&&$uc[0]==$e)?$sb:'')).'">';echo(!$I||$W?apply_sql_function($W["fun"],$_):h(current($I)))."</a>";echo"<span class='column hidden'>","<a href='".h($Ac.$sb)."' title='".lang(41)."' class='text'> ?</a>";if(!$W["fun"])echo'<a href="#fieldset-search" onclick="selectSearch(\''.h(js_escape($v)).'\'); return false;" title="'.lang(38).'" class="text jsonly"> =</a>';echo"</span>";}$rc[$v]=$W["fun"];next($I);}}$cd=array();if($_GET["modify"]){foreach($H
- as$G){foreach($G
- as$v=>$W)$cd[$v]=max($cd[$v],min(40,strlen(utf8_decode($W))));}}echo($Fa?"<th>".lang(230):"")."</thead>\n";foreach($b->rowDescriptions($H,$kc)as$_d=>$G){$bg=unique_array($H[$_d],$t);$cg="";foreach($bg
- as$v=>$W)$cg.="&".($W!==null?urlencode("where[".bracket_escape($v)."]")."=".urlencode($W):"null%5B%5D=".urlencode($v));echo"<tr".odd().">".(!$uc&&$I?"":"<td>".checkbox("check[]",substr($cg,1),in_array(substr($cg,1),(array)$_POST["check"]),"","this.form['all'].checked = false; formUncheck('all-page');").(count($uc)<count($I)||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($a).$cg)."'>".lang(229)."</a>"));foreach($G
- as$v=>$W){if(isset($Ad[$v])){$l=$m[$v];if($W!=""&&(!isset($Gb[$v])||$Gb[$v]!=""))$Gb[$v]=(is_mail($W)?$Ad[$v]:"");$y="";$W=$b->editVal($W,$l);if($W!==null){if(ereg('blob|bytea|raw|file',$l["type"])&&$W!="")$y=h(ME.'download='.urlencode($a).'&field='.urlencode($v).$cg);if($W==="")$W=" ";elseif(is_utf8($W)){if($Hf!=""&&ereg('text|blob',$l["type"]))$W=shorten_utf8($W,max(0,+$Hf));else$W=h($W);}if(!$y){foreach((array)$kc[$v]as$n){if(count($kc[$v])==1||end($n["source"])==$v){$y="";foreach($n["source"]as$p=>$jf)$y.=where_link($p,$n["target"][$p],$H[$_d][$jf]);$y=h(($n["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\\1'.urlencode($n["db"]),ME):ME).'select='.urlencode($n["table"]).$y);if(count($n["source"])==1)break;}}}if($v=="COUNT(*)"){$y=h(ME."select=".urlencode($a));$p=0;foreach((array)$_GET["where"]as$V){if(!array_key_exists($V["col"],$bg))$y.=h(where_link($p++,$V["col"],$V["val"],$V["op"]));}foreach($bg
- as$Qc=>$V)$y.=h(where_link($p++,$Qc,$V));}}if(!$y){if(is_mail($W))$y="mailto:$W";if($Ee=is_url($G[$v]))$y=($Ee=="http"&&$ba?$G[$v]:"$Ee://www.adminer.org/redirect/?url=".urlencode($G[$v]));}$q=h("val[$cg][".bracket_escape($v)."]");$X=$_POST["val"][$cg][bracket_escape($v)];$xc=h($X!==null?$X:$G[$v]);$hd=strpos($W,"<i>...</i>");$Db=is_utf8($W)&&$H[$_d][$v]==$G[$v]&&!$rc[$v];$Gf=ereg('text|lob',$l["type"]);echo(($_GET["modify"]&&$Db)||$X!==null?"<td>".($Gf?"<textarea name='$q' cols='30' rows='".(substr_count($G[$v],"\n")+1)."'>$xc</textarea>":"<input name='$q' value='$xc' size='$cd[$v]'>"):"<td id='$q' ondblclick=\"".($Db?"selectDblClick(this, event".($hd?", 2":($Gf?", 1":"")).")":"alert('".h(lang(231))."')").";\">".$b->selectVal($W,$y,$l));}}if($Fa)echo"<td>";$b->backwardKeysPrint($Fa,$H[$_d]);echo"</tr>\n";}echo"</table>\n",(!$uc&&$I?"":"<script type='text/javascript'>tableCheck();</script>\n");}if($H||$fe){$Rb=true;if($_GET["page"]!="last"&&+$x&&count($uc)>=count($I)&&($nc>=$x||$fe)){$nc=found_rows($O,$Z);if($nc<max(1e4,2*($fe+1)*$x)){ob_flush();flush();$nc=$g->result("SELECT COUNT(*) FROM ".table($a).($Z?" WHERE ".implode(" AND ",$Z):""));}else$Rb=false;}echo"<p class='pages'>";if(+$x&&$nc>$x){$md=floor(($nc-1)/$x);echo'<a href="'.h(remove_from_uri("page"))."\" onclick=\"pageClick(this.href, +prompt('".lang(232)."', '".($fe+1)."'), event); return false;\">".lang(232)."</a>:",pagination(0,$fe).($fe>5?" ...":"");for($p=max(1,$fe-4);$p<min($md,$fe+5);$p++)echo
- pagination($p,$fe);echo($fe+5<$md?" ...":"").($Rb?pagination($md,$fe):' <a href="'.h(remove_from_uri()."&page=last").'">'.lang(233)."</a>");}echo" (".($Rb?"":"~ ").lang(122,$nc).") ".checkbox("all",1,0,lang(234))."\n";if($b->selectCommandPrint()){echo'<fieldset><legend>',lang(33),'</legend><div>
- <input type="submit" value="',lang(141),'"',($_GET["modify"]?'':' title="'.lang(226).'" class="jsonly"'),'>
- <input type="submit" name="edit" value="',lang(33),'">
- <input type="submit" name="clone" value="',lang(235),'">
- <input type="submit" name="delete" value="',lang(144),'" onclick="return confirm(\'',lang(0);?> (' + (this.form['all'].checked ? <?php echo$nc,' : formChecked(this, /check/)) + \')\');">
- </div></fieldset>
- ';}$lc=$b->dumpFormat();if($lc){print_fieldset("export",lang(114));$de=$b->dumpOutput();echo($de?html_select("output",$de,$ra["output"])." ":""),html_select("format",$lc,$ra["format"])," <input type='submit' name='export' value='".lang(114)."'>\n","</div></fieldset>\n";}}if($b->selectImportPrint()){print_fieldset("import",lang(236),!$H);echo"<input type='file' name='csv_file'> ",html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$ra["format"],1);echo" <input type='submit' name='import' value='".lang(236)."'>","<input type='hidden' name='token' value='$Q'>\n","</div></fieldset>\n";}$b->selectEmailPrint(array_filter($Gb,'strlen'),$f);echo"</form>\n";}}}elseif(isset($_GET["variables"])){$nf=isset($_GET["status"]);page_header($nf?lang(75):lang(74));$mg=($nf?show_status():show_variables());if(!$mg)echo"<p class='message'>".lang(84)."\n";else{echo"<table cellspacing='0'>\n";foreach($mg
- as$v=>$W){echo"<tr>","<th><code class='jush-".$u.($nf?"status":"set")."'>".h($v)."</code>","<td>".nbsp($W);}echo"</table>\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$vf=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$O){$q=js_escape($O["Name"]);json_row("Comment-$q",nbsp($O["Comment"]));if(!is_view($O)){foreach(array("Engine","Collation")as$v)json_row("$v-$q",nbsp($O[$v]));foreach($vf+array("Auto_increment"=>0,"Rows"=>0)as$v=>$W){if($O[$v]!=""){$W=number_format($O[$v],0,'.',lang(7));json_row("$v-$q",($v=="Rows"&&$W&&$O["Engine"]==($lf=="pgsql"?"table":"InnoDB")?"~ $W":$W));if(isset($vf[$v]))$vf[$v]+=($O["Engine"]!="InnoDB"||$v!="Data_free"?$O[$v]:0);}elseif(array_key_exists($v,$O))json_row("$v-$q");}}}foreach($vf
- as$v=>$W)json_row("sum-$v",number_format($W,0,'.',lang(7)));json_row("");}else{foreach(count_tables($b->databases())as$j=>$W)json_row("tables-".js_escape($j),$W);json_row("");}exit;}else{$Df=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($Df&&!$k&&!$_POST["search"]){$E=true;$qd="";if($u=="sql"&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$E=truncate_tables($_POST["tables"]);$qd=lang(237);}elseif($_POST["move"]){$E=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$qd=lang(238);}elseif($_POST["copy"]){$E=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$qd=lang(239);}elseif($_POST["drop"]){if($_POST["views"])$E=drop_views($_POST["views"]);if($E&&$_POST["tables"])$E=drop_tables($_POST["tables"]);$qd=lang(240);}elseif($u!="sql"){$E=($u=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$qd=lang(241);}elseif($_POST["tables"]&&($E=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"]))))){while($G=$E->fetch_assoc())$qd.="<b>".h($G["Table"])."</b>: ".h($G["Msg_text"])."<br>";}queries_redirect(substr(ME,0,-1),$qd,$E);}page_header(($_GET["ns"]==""?lang(24).": ".h(DB):lang(82).": ".h($_GET["ns"])),$k,true);if($b->homepage()){if($_GET["ns"]!==""){echo"<h3>".lang(242)."</h3>\n";$Cf=tables_list();if(!$Cf)echo"<p class='message'>".lang(6)."\n";else{echo"<form action='' method='post'>\n","<p>".lang(243).": <input name='query' value='".h($_POST["query"])."'> <input type='submit' name='search' value='".lang(38)."'>\n";if($_POST["search"]&&$_POST["query"]!="")search_tables();echo"<table cellspacing='0' class='nowrap checkable' onclick='tableClick(event);'>\n",'<thead><tr class="wrap"><td><input id="check-all" type="checkbox" onclick="formCheck(this, /^(tables|views)\[/);">','<th>'.lang(102),'<td>'.lang(244),'<td>'.lang(78),'<td>'.lang(245),'<td>'.lang(246),'<td>'.lang(247),'<td>'.lang(94),'<td>'.lang(248),(support("comment")?'<td>'.lang(96):''),"</thead>\n";foreach($Cf
- as$_=>$S){$og=($S!==null&&!eregi("table",$S));echo'<tr'.odd().'><td>'.checkbox(($og?"views[]":"tables[]"),$_,in_array($_,$Df,true),"","formUncheck('check-all');"),'<th><a href="'.h(ME).'table='.urlencode($_).'" title="'.lang(28).'">'.h($_).'</a>';if($og){echo'<td colspan="6"><a href="'.h(ME)."view=".urlencode($_).'" title="'.lang(29).'">'.lang(101).'</a>','<td align="right"><a href="'.h(ME)."select=".urlencode($_).'" title="'.lang(27).'">?</a>';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(30)),"Index_length"=>array("indexes",lang(105)),"Data_free"=>array("edit",lang(31)),"Auto_increment"=>array("auto_increment=1&create",lang(30)),"Rows"=>array("select",lang(27)),)as$v=>$y)echo($y?"<td align='right'><a href='".h(ME."$y[0]=").urlencode($_)."' id='$v-".h($_)."' title='$y[1]'>?</a>":"<td id='$v-".h($_)."'> ");}echo(support("comment")?"<td id='Comment-".h($_)."'> ":"");}echo"<tr><td> <th>".lang(223,count($Cf)),"<td>".nbsp($u=="sql"?$g->result("SELECT @@storage_engine"):""),"<td>".nbsp(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$v)echo"<td align='right' id='sum-$v'> ";echo"</table>\n","<script type='text/javascript'>tableCheck();</script>\n";if(!information_schema(DB)){echo"<p>".(ereg('^(sql|sqlite|pgsql)$',$u)?($u!="sqlite"?"<input type='submit' value='".lang(249)."'> ":"")."<input type='submit' name='optimize' value='".lang(250)."'> ":"").($u=="sql"?"<input type='submit' name='check' value='".lang(251)."'> <input type='submit' name='repair' value='".lang(252)."'> ":"")."<input type='submit' name='truncate' value='".lang(253)."'".confirm("formChecked(this, /tables/)")."> <input type='submit' name='drop' value='".lang(80)."'".confirm("formChecked(this, /tables|views/)").">\n";$i=(support("scheme")?schemas():$b->databases());if(count($i)!=1&&$u!="sqlite"){$j=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"<p>".lang(254).": ",($i?html_select("target",$i,$j):'<input name="target" value="'.h($j).'">')," <input type='submit' name='move' value='".lang(255)."'>",(support("copy")?" <input type='submit' name='copy' value='".lang(256)."'>":""),"\n";}echo"<input type='hidden' name='token' value='$Q'>\n";}echo"</form>\n";}echo'<p><a href="'.h(ME).'create=">'.lang(148)."</a>\n";if(support("view"))echo'<a href="'.h(ME).'view=">'.lang(181)."</a>\n";if(support("routine")){echo"<h3>".lang(117)."</h3>\n";$Ve=routines();if($Ve){echo"<table cellspacing='0'>\n",'<thead><tr><th>'.lang(159).'<td>'.lang(91).'<td>'.lang(198)."<td> </thead>\n";odd('');foreach($Ve
- as$G){echo'<tr'.odd().'>','<th><a href="'.h(ME).($G["ROUTINE_TYPE"]!="PROCEDURE"?'callf=':'call=').urlencode($G["ROUTINE_NAME"]).'">'.h($G["ROUTINE_NAME"]).'</a>','<td>'.h($G["ROUTINE_TYPE"]),'<td>'.h($G["DTD_IDENTIFIER"]),'<td><a href="'.h(ME).($G["ROUTINE_TYPE"]!="PROCEDURE"?'function=':'procedure=').urlencode($G["ROUTINE_NAME"]).'">'.lang(109)."</a>";}echo"</table>\n";}echo'<p>'.(support("procedure")?'<a href="'.h(ME).'procedure=">'.lang(197).'</a> ':'').'<a href="'.h(ME).'function=">'.lang(196)."</a>\n";}if(support("sequence")){echo"<h3>".lang(257)."</h3>\n";$ff=get_vals("SELECT sequence_name FROM information_schema.sequences WHERE sequence_schema = current_schema()");if($ff){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(159)."</thead>\n";odd('');foreach($ff
- as$W)echo"<tr".odd()."><th><a href='".h(ME)."sequence=".urlencode($W)."'>".h($W)."</a>\n";echo"</table>\n";}echo"<p><a href='".h(ME)."sequence='>".lang(203)."</a>\n";}if(support("type")){echo"<h3>".lang(12)."</h3>\n";$T=types();if($T){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(159)."</thead>\n";odd('');foreach($T
- as$W)echo"<tr".odd()."><th><a href='".h(ME)."type=".urlencode($W)."'>".h($W)."</a>\n";echo"</table>\n";}echo"<p><a href='".h(ME)."type='>".lang(207)."</a>\n";}if(support("event")){echo"<h3>".lang(118)."</h3>\n";$H=get_rows("SHOW EVENTS");if($H){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(159)."<td>".lang(258)."<td>".lang(187)."<td>".lang(188)."</thead>\n";foreach($H
- as$G){echo"<tr>",'<th><a href="'.h(ME).'event='.urlencode($G["Name"]).'">'.h($G["Name"])."</a>","<td>".($G["Execute at"]?lang(259)."<td>".$G["Execute at"]:lang(189)." ".$G["Interval value"]." ".$G["Interval field"]."<td>$G[Starts]"),"<td>$G[Ends]";}echo"</table>\n";$Qb=$g->result("SELECT @@event_scheduler");if($Qb&&$Qb!="ON")echo"<p class='error'><code class='jush-sqlset'>event_scheduler</code>: ".h($Qb)."\n";}echo'<p><a href="'.h(ME).'event=">'.lang(186)."</a>\n";}if($Cf)echo"<script type='text/javascript'>ajaxSetHtml('".js_escape(ME)."script=db');</script>\n";}}}page_footer();