2017-05-29 1 views
0

J'apprécie cette question a été posée au nième degré mais je ne peux pas sembler le réparer en passant par les réponses là-bas.Les en-têtes de Wordpress déjà envoyés

Si quelqu'un a une idée de ce qui cause cela, je l'apprécierais grandement.

Je construis un site wordpress sur un localhost en utilisant WAMP pour tester quelques choses avant d'aller vivre. J'ai installé la fiche Insérer PHP et il arrête tout provoque cette erreur:

Warning: session_start(): Cannot send session cookie – headers already sent by (output started at C:\wamp64\www\wordpress\wp-includes\class.wp-styles.php:237) in C:\wamp64\www\wordpress\wp-content\plugins\insert-php\insert_php.php(48) : eval()’d code on line 2

J'ai vérifié tous les fichiers PHP pertinents pour les espaces blancs, vérifier l'encodage et il continue encore se produire. J'ai enlevé les balises des documents et je n'arrive toujours pas à le résoudre.

Je ne peux que penser que c'est quelque chose à voir avec WordPress ou suis-je vraiment ignorant de quelque chose?

EDIT:

Le code est:

<?php 
session_start(); 

if(isset($_SESSION['usr_id'])) { 
    header("Location: index.php"); 
} 

include_once 'dbconnect.php'; 

//set validation error flag as false 
$error = false; 

//check if form is submitted 
if (isset($_POST['signup'])) { 
$name = mysqli_real_escape_string($con, $_POST['name']); 
$email = mysqli_real_escape_string($con, $_POST['email']); 
$password = mysqli_real_escape_string($con, $_POST['password']); 
$cpassword = mysqli_real_escape_string($con, $_POST['cpassword']); 

//name can contain only alpha characters and space 
if (!preg_match("/^[a-zA-Z ]+$/",$name)) { 
    $error = true; 
    $name_error = "Name must contain only alphabets and space"; 
} 
if(!filter_var($email,FILTER_VALIDATE_EMAIL)) { 
    $error = true; 
    $email_error = "Please Enter Valid Email ID"; 
} 
if(strlen($password) < 6) { 
    $error = true; 
    $password_error = "Password must be minimum of 6 characters"; 
} 
if($password != $cpassword) { 
    $error = true; 
    $cpassword_error = "Password and Confirm Password doesn't match"; 
} 
if (!$error) { 
    if(mysqli_query($con, "INSERT INTO users(name,email,password) VALUES('" . $name . "', '" . $email . "', '" . md5($password) . "')")) { 
     $successmsg = "Successfully Registered! <a href='login.php'>Click here to Login</a>"; 
    } else { 
     $errormsg = "Error in registering...Please try again later!"; 
    } 
} 
} 
?> 
+0

Quel PHP essayez-vous d'insérer? Si vous essayez d'ajouter 'session_start()' alors vous ne pouvez probablement pas utiliser ce plugin pour le faire. Il est impossible pour nous de savoir sans voir quel code vous essayez d'ajouter, et où. –

+0

Cela semble un peu faux pour WordPress de le faire - j'ai travaillé avec lui pendant des années et je ne l'avais pas fait pour moi. Il s'agira sans doute d'un plugin, parcourez-les tous et désactivez-les un par un. trouve le. Débarrassez-vous de cela. – danjbh

+0

Avez-vous essayé de trouver l'endroit avec http://php.net/manual/de/function.headers-sent.php –

Répondre

-1

Non, il est probable que cette erreur est causée par un plugin ou un thème. Vous pouvez interpréter incorrectement le message d'erreur car WordPress utilise une approche Action-Driven. L'auteur du plugin a probablement utilisé un hook qui fonctionne trop tard pour faire les choses de la session qu'il doit faire ou un autre plugin ou thème sur votre WordPress n'est pas codé correctement. Nous avons besoin de plus d'informations pour résoudre ce problème.