-
Conteúdo Similar
-
Por eduardodsilvaq
Erro retornado no console do navegador: 400 bad request
Rastreei o erro ate essa parte no arquivo admin-ajax.php mudando o valor de resposta de 0 para 1:
if ( is_user_logged_in() ) { // If no action is registered, return a Bad Request response. if ( ! has_action( "wp_ajax_{$action}" ) ) { wp_die( '0', 400 ); } Tentei de tudo, mas infelizmente nao entendi oq realmente significa esse login e como ele funciona.
Vi algumas pessoas tendo problema com o host, no meu caso estou usando hostinger. (Nao creio que isso e relevante mas ta ai.)
Código utilizado:
Javascript
function formValidation() { event.preventDefault(); var name = document.forms["contactForm"]["name"].value; var email = document.forms["contactForm"]["email"].value; var subject = document.forms["contactForm"]["subject"].value; var message = document.forms["contactForm"]["message"].value; document.getElementById('status').innerHTML = ''; var errorMessage="<span class='error'>All fields are required.</span>"; var regEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; if (name.trim() == "" ||email.trim() == "" || subject.trim() == "" || message.trim() == "") { document.getElementById('status').innerHTML = errorMessage; return false; } if (!regEx.test(email)) { var errorMessage="<span class='error'>Invalid email.</span>"; document.getElementById('status').innerHTML = errorMessage; return false; } processContactSubmit(); return true; } function processContactSubmit() { var request = new XMLHttpRequest(); request.open("POST", "/wp-admin/admin-ajax.php?action=process_contact_form"); request.onreadystatechange = function() { if(this.readyState === 4 && this.status === 200) { document.getElementById("status").innerHTML = this.responseText; } }; var myForm = document.getElementById("contactForm"); var formData = new FormData(contactForm); request.send(formData); } functions.php
add_action('wp_ajax_nopriv_process_contact_form', 'process_contact_form'); add_action('wp_ajax_process_contact_form', 'process_contact_form'); //Retirar essa parte para error no console, no contrario ira aparecer no navegador o numero 0. function process_contact_form() { $to = "Recipient Email Address"; $subject = $_POST["subject"]; $headers = "Testing"; $message = $_POST["message"]; $attachments = ""; $sent = wp_mail($to, $subject, $message, $headers, $attachments); if (! $sent) { echo "<span class='error'>Problem in sending mail.</span>"; } else { echo "<span class='success'>Hi, thank you for the message.</span>"; } wp_die(); } Html
<form name="contactForm" id="contactForm" method="post" onsubmit="return formValidation()" action=""> <p class="comment-form-comment"><textarea id="message" name="message" required="" placeholder="" aria-required="true"></textarea></p> <p class="comment-form-author"><label for="author">Nome: </label> <input id="name" name="name" required="" size="30" type="text" value=" " /></p> <p class="comment-form-author about"><label for="author">Assunto: </label> <input id="subject" name="subject" required="" size="40" type="text" value=" " /></p> <p class="comment-form-email"><label for="email">Email: </label> <input id="email" name="email" required="" size="30" type="text" value="" /></p> <p class="form-submit"><input id="submit" class="submit" name="email_contato" type="submit" value="Enviar" /></p> </form> <h3><div id="status"></div></h3>
-
Por Sapinn
É a primeira vez que vejo esse erro e estou tendo problemas para resolvê-lo. Tenho no meu controller uma página de erro com o código:
<?php namespace Source\App\Error; use Source\Core\Controller; class Error extends Controller { public function __construct() { parent::__construct(__DIR__ . "/../../themes/" . CONF_VIEW_ERROR . "/"); } /** * ERROR * @param array $data */ public function errors(?array $data): void { $error = new \stdClass(); json_encode($error); switch ($data['errcode']) { case "problemas": $error->code = "OPS"; $error->title = "Estamos enfrentando problemas!"; $error->message = "Parece que nosso serviço não está diponível no momento. Já estamos vendo isso mas caso precise, envie um e-mail :)"; $error->linkTitle = "ENVIAR E-MAIL"; $error->link = "mailto:" . CONF_MAIL_SUPPORT; break; case "manutencao": $error->code = "OPS"; $error->title = "Desculpe. Estamos em manutenção!"; $error->message = "Voltamos logo! Por hora estamos trabalhando para melhorar nosso conteúdo para você controlar melhor as suas contas :P"; $error->linkTitle = null; $error->link = null; break; default: $error->code = $data['errcode']; $error->title = "Ooops. Conteúdo indispinível :/"; $error->message = "Sentimos muito, mas o conteúdo que você tentou acessar não existe, está indisponível no momento ou foi removido :/"; $error->linkTitle = "Continue navegando!"; $error->link = url_back(); break; } $head = $this->seo->render( "{$error->code} | {$error->title}", $error->message, url("/ops/{$error->code}"), theme("/assets/images/share.jpg", CONF_VIEW_ERROR), false ); echo $this->view->render("error", [ "head" => $head, "error" => $error ]); } }
Estou usando o Composer para fazer minhas rotas de erro e elas se parecem com isso:
/** * ERROR ROUTES */ $route->namespace("Source\App\Error"); $route->group("/ops"); $route->get("/{errcode}", "Error:errors"); /** * ROUTE */ $route->dispatch(); /** * ERROR REDIRECT */ if ($route->error()) { $route->redirect("/ops/{$route->error()}"); } E minha visão na página fkbError é assim:
layout("_theme"); ?> <article class="not_found"> <div class="container content"> <header class="not_found_header"> <p class="error">•<?= $error->code; ?>•</p> <h1><?= $error->title; ?></h1> <p><?= $error->message; ?></p> <?php if ($error->link): ?> <a class="not_found_btn gradient gradient-green gradient-hover transition radius" title="<?= $error->linkTitle; ?>" href="<?= $error->link; ?>"><?= $error->linkTitle; ?></a> <?php endif; ?> </header> </div> </article> E o código parece estar certo mas o erro persiste, o que devo fazer?
-
Por Sapinn
Opa galera tudo beleza? Estou com um erro que está me deixando louco eu tenho o seguinte codigo:
public function findByCode(string $code, string $columns = "*"): ?Sales { $find = $this->find("code = :code", "code={$code}", $columns); return $find->fetch(true); } Quando o tentou usar ele fazendo algo como:
$sales = (new Sales())->findByCode(client()->code);
Ele não funciona e me retorna o seguinte erro:
Uncaught TypeError: Return value of Source\Models\Sales::findByCode() must be an instance of Source\Models\Sales or null, array returned in
Alguém sabe como resolver isso???
-
Por Sapinn
Olá amigos tudo bem? Estou com um erro de loop de redirecionamento quando tento colocar uma rota de erro. Na minha página index onde eu coloco todas as minhas rotas eu tehno a seguinte rota para erro
/** * ERROR ROUTES */ $route->namespace("Source\App\Error"); $route->group("/ops"); $route->get("/{errcode}", "Error:errors"); /** * ROUTE */ $route->dispatch(); /** * ERROR REDIRECT */ if ($route->error()) { $route->redirect("/ops/{$route->error()}"); } Se eu remover esse ultimo if a pagina não da erro mas também não carrega meu metodo. Eu estou usando o composer e estou usando a dependecia do CoffeCode para rotas. Alguém sabe como resolver???
-
Por asacap1000
Galera me foi solicitado a criação de um servidor web, para disponibilizar serviços para os clientes. O que vocês recomendam?
Tenho um servidor da DELL com windows 2016. Todo o desenvolvimento será em PHP, Javascript e companhia Ltda com conexão aos bancos de dados Mysql, SQL e ORACLE.
Já temos um servidor que será desativado porém está utilizando uma versão muito antiga de PHP 5.4 e como base de instalação foi utilizado o WampServer.
-
To com um problema, tenho um site de noticias e esse site possui um painel onde eu posso adicionar novas noticias, mas o problema é que sempre que eu coloco "/etc/" em alguma parte do texto da noticia ele da o erro 403 Forbidden na hora de cadastra a noticia. O mais estranho é que o site na minha maquina(local) funciona normal e também funciona normal em um outro servidor que eu uso como teste.
Já tentei de tudo, mas até agora não tive nenhum avanço, então eu queria saber se alguém saberia como eu posso estar resolvendo esse erro? ou será que o erro pode estar sendo causado por causa do servidor de hospedagem?
Compartilhar este post
Link para o post
Compartilhar em outros sites