Salut svp aidez moi j ai une erreur a la ligne 51 [Résolu/Fermé]

Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
salut svp aidez moi.je n arrive pas a corriger mon erreur Parse error: syntax error, unexpected end of file in C:\wamp64\www\essai\new1.php on ine 51 c'est a dire a la derniere ligne de la balise< /html>.je ne c'est pas de quoi il s'agit




<!Doctype>
<html>
<head><title></title>
<meta charset = "utf-8"/>
<Style>
</Style>
</head>
<?php
include("perl.php");
?>
<body>
<form method="POST" action="" >
Nom <input type ="text"name="Nom"/></br>
Prénom <input type ="text"name="prenom"/></br>
<br>
age <input type ="text"name="age"/></br>
profession<input type ="text"name="profession"/></br>
Sexe:Masculin <input type ="radio" name ="Sexe" value="Monsieur"/
Feminin <input type ="radio" name ="Sexe" value="feminin"/></br>
</br>
<hr size='17' color="grenn">
</br>
<input type="submit" name="aff" value="VERIFIER" />
<input type="submit" name="aff" value="ANNULER" />
</FORM>
<?php
$date_du_jour = date ("d-m-Y");
$heure_courante = date ("H:i:m");
echo ' ';
echo $date_du_jour;
echo ' ';
echo $heure_courante;
if(isset($_post['submit'])){
{
$Nom= $_POST['Nom'];
$prenom= $_POST['prenom'];
$age= $_POST['age'];
$profession= $_POST['profession'];
$sexe= $_POST['sexe'];
$sql="INSERT INTO concour (Nom,prénom,age,profession,sexe) VALUES ('$Nom','$prénom','$age,'$profession','sexe')";
mysql_query($sql) or die ('erreur sql!'.$sql.'<br/>'.mysql_error());
mysql_close();
}
?>
</body>
</html>
Afficher la suite 

6 réponses

Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
0
Merci
Bonjour laureinehtml

Quand vous avez une erreur de syntaxe, il faut relire le code calmement.
Votre erreur de syntaxe pour moi est dû au fait que vous avez ouvrez 2 fois l'accolade pour le if

if(isset($_post['submit'])){
{

Juste un petit conseil, ne mettez pas d'accents dans les noms de variables.
Évitez ce genre de titre de sujet ;)

En espérant avoir pu vous aider.

Pensez à mettre le sujet en résolu si c'est le cas.

Bonne continuation pour votre développement.

JonDev

À chaque problème sa solution
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
merci jondev j'ai suivi tes conseils et mon code s affiche normalement.mais j'en ai un autre quand je crée les table avec mysql $sql="INSERT INTO concour (Nom,prénom,age,profession,sexe) VALUES ('$Nom','$prénom','$age,'$profession','sexe')"; il y a selement trois table qui se créer dans ma base de donnée(nom,prenom,age) et quand je renseigne les table sont vides
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
0
Merci
Bonjour laureinehtml

Je ne comprends pas ce que vous voulez dire par "crée les table".
La requête "INSERT INTO" permet simplement d'insérer des données dans la table "concour" déjà existante qui contient normalement les colonnes "Nom, prénom, age, profession et sexe".

Je pense qu'il est nécessaire que vous relisiez calmement votre code car vous devez avoir des erreurs dans l'orthographe de vos variables et peut-être sur le nom des colonnes voir de la table. En relisant votre code, je peux constater un problème dans les variables "$prenom" et "$sexe".

"$prenom= $_POST['prenom'];" est dévenu "$prénom" (avec un accent) dans la requête d'insertion et "$sexe= $_POST['sexe'];" est devenu "'sexe'" (sans le $) dans la requête.


Je vous redonne mon conseil, ne mettez pas d'accents dans les noms de variables, colonnes ....

En espérant avoir pu vous aider.

Pensez à mettre le sujet en résolu si c'est le cas.

Bonne continuation pour votre développement.

JonDev
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
merci pour ta remarque en fait j'ai voulu dit inserer des champs dans table qui on pour nom(nom,prenom etc...)mais meme quand je rectifie l'erreur de la syntaxe ça ne me pas les autres champ.j'aurai voulu faire d'abord une requete de creation de champ(nom,prenom etc..) pour voir ce que ça va donner en fesant CREATE INTO concour(matricule,nom,prenom,age,sexe)
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
0
Merci
Êtes-vous sûr de l'orthographe de nom des colonnes et de la table ?
Avez-vous essayé d’exécuter la requête depuis le phpadmin ? Cela permettrait de connaitre le message d'erreur.
Sans connaitre la structure de la table ... c'est un peu difficile de trouver le point bloquant.

JonDev
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
en fait j'ai pas de champs(matricule,nom,prenom etc...) mais je veux en crée via le code php avec la close INSERT INTO() mais ce qui se passe à l'exécution de la requette c'est seulement que nom,prenom qui se trouve dans ma table concour.quand je lance ma requete dans phpmyadmin on me di que le champs 'nom' n'est pas reconnu dans fied list
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
0
Merci
Est-il possible de faire un copier-coller du message d'erreur de Phpmyadmin ainsi que la structure de la table ? Cela sera plus parlant et permettrait de mieux voir d'où vient le problème

JonDev
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
voila le msg d'erreur quan j'utilise la requete:INSERT INTO concour (Nom,prénom,age,profession,sexe) VALUES ('Nom','prenom','age','profession','sexe');


Requête SQL :


INSERT INTO concour (Nom,prénom,age,profession,sexe) VALUES ('Nom','prenom','age','profession','sexe')



MySQL a répondu: Documentation
#1054 - Champ 'Nom' inconnu dans field list
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
0
Merci
Je me suis créé une table avec les champs que vous avez donné et votre requête s'exécute sans problème.

Pouvez-vous exporter la structure de votre table ?

Vous cliquez sur "Exporter" dans phpmyadmin puis vous me coller le contenu du fichier généré.

JonDev
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
j'exporte mais j'arrive pas a coller
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
<?xml version="1.0" encoding="UTF-8"?>

<!-- - phpMyAdmin XML Dump - version 4.6.4 - https://www.phpmyadmin.net - - Client : 127.0.0.1 - Généré le : Ven 20 Janvier 2017 à 10:46 - Version du serveur : 5.7.14 - Version de PHP : 5.6.25 -->

-<pma_xml_export xmlns:pma="https://www.phpmyadmin.net/some_doc_url/" version="1.0">

<!-- - Structure schemas -->



-<pma:structure_schemas>


-<pma:database charset="latin1" collation="latin1_swedish_ci" name="universite">

<pma:table name="concour"> CREATE TABLE `concour` ( `prenom` varchar(15) NOT NULL, `nom` varchar(15) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; </pma:table>

</pma:database>

</pma:structure_schemas>

<!-- - Base de données : 'universite' -->



-<database name="universite">

<!-- Table concour -->


</database>

</pma_xml_export>
jondev
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
> laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
Le problème vient du fait que vous essayez d'insérer des données dans des champs qui n'existent pas.

Vous ne pouvez pas exécuter la reqête "INSERT INTO concour Nom,prénom,age,profession,sexe) VALUES ('Nom','prenom','age','profession','sexe'); " car les champs "age","profession" et "sexe" n'existent pas dans votre table.

Dans l'état actuel de votre table, seule la requête INSERT INTO concour (Nom,prénom) VALUES ('Nom','prenom'); devrait fonctionner

Pour exécuter la première requête, vous devez créer les champs "age","profession" et "sexe" dans votre table "concour"

Attention : dans votre table, le champ prénom n'a pas d'accent alors que dans votre requête oui.

En espérant avoir pu vous aider.

Pensez à mettre le sujet en résolu si c'est le cas.

Bonne continuation pour votre développement.

JonDev
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
oui jondev en faite c'est ce que j'essayai de te faire comprendre et savoir si c'etait possible de crer des champs dans la table concour via requete sql dans le code php .je vai donc faire comme tu me dire pour voir ce que s'adonne
jondev
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
> laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
Ok je n'avais pas compris cela désolé.

Oui il est possible de créer des champs depuis PHP.
Il faut vérifier si la colonne existe et si elle n'existe pas, la créer.

Voici comment procéder:

$sql= "SHOW COLUMNS FROM concour LIKE 'age'";
$db->query($sql);
if(empty(empty($db->num_rows)) {
$alter = "ALTER TABLE concour ADD age varchar(50) NULL";
$db->query($alter);
} else {
echo 'la colonne existe';
}


Bonne continuation pour votre développement.

JonDev
Messages postés
20
Date d'inscription
mercredi 18 janvier 2017
Statut
Membre
Dernière intervention
10 octobre 2017
0
Merci
Il faut ouvrir le fichier avec un bloc-notes par exemple et faire un copier-coller du contenu.

Sinon dans phpmyadmin, quand vous faites "Exporter", dans "Méthode d'exportation", vous sélectionnez "Personnalisée" puis pour "Sortie" vous sélectionnez "Afficher les résultats".
Vous cliquez sur le bouton "Exécuter" tout en bas de la page, cela va vous afficher la structure à l'écran, il ne reste plus qu'à faire un copier-coller.

JonDev
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
<?xml version="1.0" encoding="utf-8"?>
<!--
- phpMyAdmin XML Dump
- version 4.6.4
- https://www.phpmyadmin.net
-
- Client : 127.0.0.1
- Généré le : Ven 20 Janvier 2017 à 10:55
- Version du serveur : 5.7.14
- Version de PHP : 5.6.25
-->

<pma_xml_export version="1.0" xmlns:pma="https://www.phpmyadmin.net/some_doc_url/">
<!--
- Structure schemas
-->
<pma:structure_schemas>
<pma:database name="universite" collation="latin1_swedish_ci" charset="latin1">
<pma:table name="concour">
CREATE TABLE `concour` (
`prenom` varchar(15) NOT NULL,
`nom` varchar(15) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pma:table>
</pma:database>
</pma:structure_schemas>

<!--
- Base de données : 'universite'
-->
<database name="universite">
<!-- Table concour -->
</database>
</pma_xml_export>
laureinehtml
Messages postés
11
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
9 février 2017
-
salut jondev mon code php marche a merveille j'arrive a renseigner ma base de donne via mon formulaire merci pour l 'assistance