conn = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD); $ok = mysqli_select_db($this->conn,DB_NAME); if (!$ok) return false; $this->get_options(); // plugin disabled if (!$this->enable) return; // current request is admin's one if (isset($_COOKIE['wpantiddos']) && $_COOKIE['wpantiddos']==$this->cookie) return; if ($this->only_params_enabled) if (!$this->only_param_detected()) return; // detect request type and limits if ($this->xhr_request()) { if ($this->hits_limit_XHR=='ANY') return; $request_type = 'xhr'; $hits_limit = $this->hits_limit_XHR; $seconds_limit = wpadtiddos_seconds_limit_XHR; } elseif ($_POST && isset($_POST[$this->pass_param]) ) { if ($this->seconds_limit_AUTH=='ANY') return; $request_type = 'auth'; $seconds_limit = $this->seconds_limit_AUTH; $this->only_params .= ' '.$this->pass_param; $hits_limit = 1; } elseif ($_POST) { if ($this->seconds_limit_POST=='ANY') return; $request_type = 'post'; $hits_limit = 1; $seconds_limit = $this->seconds_limit_POST; } else { if ($this->hits_limit_GET=='ANY') return; $request_type = 'get'; $hits_limit = $this->hits_limit_GET; $seconds_limit = wpadtiddos_seconds_limit_GET; } if ($this->send_header) header("WP_AntiDDOS: yes"); if ($this->cloudflare) { if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP']; } $this->ip = $_SERVER['REMOTE_ADDR']; if ($this->block_cnet) $this->ip = substr($this->ip,0,strrpos($this->ip,'.')+1); $this->warm_level = ceil($hits_limit/2); try { $res = mysqli_query($this->conn,"SELECT count(*) kount FROM $this->table_name WHERE ip='".addslashes($this->ip)."' AND tstamp>".(time()-$seconds_limit)." AND type='$request_type'"); $row = mysqli_fetch_assoc($res); if (!$row) $this->error_msg = 'Error detected'; $this->hits = @$row['kount']+1; // consider current request too if ($this->hits==0) // if no hits from this IP $this->visitor = "new"; elseif ($this->hits>$hits_limit) $this->visitor = "hot"; elseif ($this->hits>=$this->warm_level) $this->visitor = "warm"; else $this->visitor = "cool"; // add current hit mysqli_query($this->conn,"INSERT INTO $this->table_name SET ip='$this->ip', type='$request_type', tstamp=".time()); // cleanup ip list $clear_time = max($this->delay_time,$seconds_limit); mysqli_query($this->conn,"DELETE FROM $this->table_name WHERE tstamp<".(time()-$clear_time)); } catch(Exception $e) { $this->error_msg = $e->getString(); $this->status = 'error'; mysqli_close($this->conn); return; } mysqli_close($this->conn); if (!empty($this->error_msg) ) { $this->status = 'error'; } if ($this->auto && $this->visitor=='hot') { header('HTTP/1.0 503 Service Unavailable'); header('Status: 503 Service Unavailable'); header("Retry-After: ".($this->delay_time+1)); // submit form first if POST request if (!$_POST) print ""; else { $inputs = $this->array_to_fields($_POST); print '
'. $inputs. '
'; } if ($request_type=='auth') printf("

$this->delay_message_auth

",$this->delay_time); else printf("

$this->delay_message

",$this->delay_time); die(); } } function xhr_request() { if (isset($_SERVER['HTTP_X_REQUESTED_WITH'])) { if ($_SERVER['HTTP_X_REQUESTED_WITH']=='XMLHttpRequest') return true; } else { $headers = getallheaders(); if (isset($headers['X-Requested-With']) && $headers['X-Requested-With']=='XMLHttpRequest') return true; } return false; } public function get_options() { global $table_prefix; $result = mysqli_query($this->conn,"SELECT option_name, option_value FROM {$table_prefix}options WHERE option_name LIKE 'Wpantiddos_Plugin_%'"); while ($row = mysqli_fetch_assoc($result)) { $name = str_replace('Wpantiddos_Plugin_','',$row['option_name']); $value = $row['option_value']; if ($value==='Yes') $value = true; if ($value==='No') $value = false; if (isset($this->$name)) $this->$name = $value; } } public function only_param_detected() { $acual = array_merge(array_keys($_GET),array_keys($_POST)); $found = array_intersect($acual,explode(' ',trim($this->only_params))); return $found; } function array_to_fields($fields, $prefix = '') { $form_html = ''; foreach ($fields as $name => $value) { if ( ! is_array($value)) { if ( ! empty($prefix)) { $name = $prefix . '[' . $name . ']'; } // generate the hidden field $form_html .= "\n"; } else { if ( ! empty($prefix)) { $subprefix = $prefix . '[' . $name . ']'; } else { $subprefix = $name; } $form_html .= array_to_fields($value, $subprefix); } } return $form_html; } } ?> novembre, 2015 | Bourgogne Passions

Bourgogne Passions

Monthly Archives: novembre 2015

zoom
Commentaires fermés sur Beaune insolite

Beaune insolite

A Beaune il n’y a pas que l’hôtel Dieu !

La Venus à Tiroir

Passez au travers du jardin Boussard de la Chapelle non loin de notre beffroi, elle vous attend !

Semi-couchée, son corps contorsionné en une bien inconfortable position semble un fardeau pour le bras qui le soutient

Il n’en est pas de même pour l’autre

 

Lire la suite

zoom
Commentaires fermés sur La vigne et le vins sont de grands mystères

La vigne et le vins sont de grands mystères

Découverte de la cote viticole avec les membres d’un club littéraire allemand .La visite est ponctuée de lectures de textes d’auteurs bourguignons .Qui mieux que Colette savait parler de la vigne !

« La vigne et le vin sont de grands mystères .seule dans le règne

Lire la suite

zoom
Commentaires fermés sur Osons mettre de l’eau dans notre vin

Osons mettre de l’eau dans notre vin

Joli succès pour la visite insolite de Beaune

40 personnes étaient au rendez-vous

Beaune capitale des vins de Bourgogne n’aurait sans doute pas vu le jour sans eau. C’est au bord de la Bouzaize que commence l’histoire de Beaune, bien avant notre ère .
Au cours des siècles

Lire la suite

zoom
Commentaires fermés sur Visite de Beaune avec l’office du tourisme

Visite de Beaune avec l’office du tourisme

Visite ville et château ce 18 avril, très agréable visite, vous parvenez a capter l attention sans alourdir, commentaires judicieux et très intéressants. Merci Véronique. Signé : les belges du groupe

zoom
Commentaires fermés sur Flavigny sur Ozerain ,le promontoire des dieux

Flavigny sur Ozerain ,le promontoire des dieux

Très tôt la religion s’empare de cet éperon, De la grande abbaye bénédictine Saint-Pierre fondée en 719, subsiste la crypte, c’est assurément un des plus précieux monuments du passé chrétien de Bourgogne.Avec l’arrivée des reliques de sainte Reine (en 866),Flavigny devint un lieu de pélérinage .Une cité se développe à l’ombre de la grande abbaye . Cette riche histoire, nous a légué un charmant village médiéval niché dans un écrin de verdure .

zoom
Commentaires fermés sur Beaune au féminin

Beaune au féminin

Beaune au féminin !

Un groupe de copines souhaitent découvrir Beaune autrement :
qu’a cela ne tienne ,nous voilà parties pour une visite de Beaune coté féminin et une foule d’anecdotes coquasses et amusantes .
Elle sont nombreuses ces figures féminines ,réelles ou symboliques

Lire la suite

zoom
Commentaires fermés sur Beaune tout en couleur

Beaune tout en couleur

Quelques crayons ,un dessin à colorier et nous partons à la découverte de Beaune avec les petits élèves de Me Boyer (CE2).
En ce début d’été, les couleurs sont chatoyantes, la nature se conjugue au patrimoine pour nous offrir un merveilleux tableau à ciel ouvert .

Lire la suite

zoom
Commentaires fermés sur Visite de Flavigny-sur-Ozerain

Visite de Flavigny-sur-Ozerain

Bourgogne Passions
dimanche 21 juin, 10:00 (UTC+02)

Flavigny-sur-Ozerain RDV Devant l’abbaye

zoom
Commentaires fermés sur Des villas balnéaires à Beaune

Des villas balnéaires à Beaune

Personne n’ignore à Beaune l’existence des allées Fondet, allées résidentielles très »belle époque ».

Ses élégantes maisons aux façades incrustées de briques et de céramiques ne manquent pas de susciter la curiosité   et une  flânerie dans ce quartier épargné par la circulation automobile nous transporte dans les stations balnéaires de la belle époque.

Lire la suite