Pagina 1 din 1

Syntax error, unexpected $end in

Scris: Mar Oct 23, 2012
de cadou
Am facut aceasta pagina cu acest cod. si imi da eroare.
Deci va rog un mic ajutor.

Cod: Selectaţi tot

Parse error: syntax error, unexpected $end in ....../public_html/inregistrare.php on line 445
Desi linia 445 nu exista .... Acesta este codul

Cod: Selectaţi tot

<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
?>
<?php
session_start();
$host = 'aici am sters acum ca sa nu vedeti voi aceste date'; // Serverul MySQL
$utilizator = 'la fel ce am scris la host'; // Utilizator pt. server
$parola = 'la fel ce am scris la host; // Parola utilizator
$numebd = 'la fel ce am scris la host'; // Numele bazei de date
// Conectarea la server
$conn = mysql_connect($host, $utilizator, $parola);
if (!$conn) { echo '<h4>Conectare nereusita la MySQL</h4>'; }
// Selectarea bazei de date
if (!mysql_select_db($numebd, $conn)) { echo '<h4>Baza de date nu a putut fi selectata deoarece : '. mysql_errno(). ' : '. mysql_error().'</h4>'; }
mysql_set_charset('utf8', $conn); // Setarea pt. lucru cu format UTF-8
// Creaza tabelul membri, avand coloanele id, nume, email....
$sql = "CREATE TABLE `membri` (id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, nume varchar(42), idm varchar(42), parola varchar(20), tara varchar(50), oras varchar(50), nastere varchar(10), sex varchar(15), stare varchar(25), descriere varchar(200), interes varchar(30), referal varchar(42)) CHARACTER SET utf8 COLLATE utf8_general_ci";
if (mysql_query($sql, $conn)) echo '<h4>Tabelul <u>membri</u> a fost creat.</h4>';
else echo 'h4>Tabelul <u>membri</u> nu a putut fi creat deoarece - '. mysql_errno(). ' : '. mysql_error(). '</h4>';
mysql_close($conn);
// Link-ul pt. revenire la pagina anterioara
$inapoi = '<br /><br /><b><a href="#" onclick="history.back()">Click aici</a></b> pentru a reveni la pagina anterioara.';
// Functia care adauga numele de utilizator si parola in BD
function addUtilizator($nume, $pass, $email) {
GLOBAL $conn, $aprobat, $inapoi;
$data = time();
$ip = $_SERVER['REMOTE_ADDR'];
$parola = $parola;
$nume = $nume;
$idm = $idm;
$tara = $tara;
$oras = $oras;
$nastere = $nastere;
$sex = $sex;
$stare = $stare;
$descriere = $descriere;
$interes = $interes;
$referal = $referal;
// Adaugarea datelor in baza de date (daca nu sunt filtrate implicit de PHP, le filtreaza cu "addslashes()")
if(!get_magic_quotes_gpc()) {
$nume = addslashes($nume);
$parola = addslashes($parola);
$idm = addslashes($idm);
$tara = addslashes($tara);
$oras = addslashes($oras);
$nastere = addslashes($nastere);
$sex = addslashes($sex);
$stare = addslashes($stare); $descriere = addslashes($descriere); $interes = addslashes($interes); $referal = addslashes($referal); } $q = "INSERT INTO `utilizatori` (id, nume , idm , parola, tara, oras, nastere, sex, stare, descriere, interes, referal) VALUES ('$id', '$nume' , '$idm' , '$parola', '$tara', '$oras', '$nastere', '$sex', '$stare', '$descriere', '$interes', '$referal', '$aprobat', '$ip', '$data')"; if (mysql_query($q,$conn)) $mesaj = '<center><h1>Succes!</h1> <p><font size="4"><b><font color="blue">'. $nume1. '</font></b>,te-ai inregistrat cu succes.</font></p><br />Acum te poti loga pe site</center>'; else $mesaj = '<h1>Inregistrare nereusita</h1>In urma unei erori: <i>'. mysql_errno().' - '.mysql_error(). '</i> inregistrarea dv. pe numele <b> '. $nume1. '</b>, nu a putut fi realizata'; $id = mysql_insert_id(); // Preia ultimul id adaugat (corespunzator inregistrarii curente) // Codul urmator verifica existenta sesiuni care este creata cand inregistrarea este facuta cu succes // Dupa inregistrare afiseaza un mesaj de reusita a inregistrarii sau esec if(isset($_SESSION['registered']) && isset($_SESSION['reguname'])){ // Aici este ce va apare dupa inregistrare echo ' <html> <title>Pagina de inregistrare</title> <body>'. $_SESSION['registered'].' </body> </html>'; exit; } else { unset($_SESSION['reguname']); unset($_SESSION['registered']); } /* Functie pt. verificarea existentei caracterelor = , ` ' " in sir * Pentru o securitate sporita */ function ve_sir($sirul) { $interzis = '/[=,`\'"]/'; if (preg_match($interzis, $sirul)) { return false; } else { return true; } } // Determina daca va afisa sau nu formularul de Inregistrare // Bazat pe datele completate si trimise // Verifica baza de date si apeleaza functia care creaza contul nou if(isset($_POST['subjoin']) && isset($_POST['nrv'])) { /* Se asigura ca toate campurile au fost completate */ if(!$_POST['nume'] || !$_POST['parola'] || !$_POST['idm'] || !$_POST['descriere']) { $eror = 'Completati toate campurile.'; } else { $nume = trim($_POST['nume']); $pass = trim($_POST['pass']); $email = trim($_POST['email']); } // Daca verificarea formularului a dat erori, afiseaza eroarea si link inapoi /* Altfel, verifica in BD daca numele sau email-ul sunt deja inregistrate */ if (isset($eror)) { echo '<center><br /><br /><font size="+1" color="red">'. $eror.'</font>'.$inapoi. '</center>'; } else { if(!get_magic_quotes_gpc()) { $nume = addslashes($nume); $idm = addslashes($idm); } $q = "SELECT nume, idm from `utilizatori` WHERE `nume`='$nume' OR `email`='$idm'"; $result = mysql_query($q,$conn); // verifica daca nume si email exista deja in BD if (mysql_numrows($result)>0) { while ($rand = mysql_fetch_array($result, MYSQL_ASSOC)) { $nume_bd = stripslashes($rand['nume']); $idm_bd = stripslashes($rand['idm']); } // Afiseaza avertismentele, daca numele e deja inregistrat if (strcasecmp($nume_bd, $nume)==0) { echo "Numele de utilizator: <strong>$nume</strong> este deja inregistrat, va rog alegeti altul."; } // daca email-ul e deja inregistrat if (strcasecmp($idm_bd, $idm)==0) { echo "Adresa de email: <strong>$idm@yahoo.com</strong> a fost deja folosita pentru inregistrare. <br /> Daca v-ati inregistrat cu aceasta adresa de e-mail si ati uitat datele de autentificare, click <a href=\"recuper.php\">Recuperare date</a>.<br /><br />SAU"; } echo "<center>$inapoi</center>"; } else { /* Creaza sesiunile si Adauga noul cont in baza de date */ $_SESSION['reguname'] = trim($_POST['nume']); $_SESSION['registered'] = addUtilizator(trim($_POST['nume']), $parola, trim($_POST['idm'])); echo '<meta http-equiv="Refresh" content="1;url='.$_SERVER['PHP_SELF'].'">'; exit; } } } else { // Aici este pagina cu formularul de logare, // numele campurilor input nu trebue schimbate // setare nr. verificare si sesiunea asociata $data_nrv = date(" j-F-Y, g:i a "); // Pt. stabilire nr. verificare $nr_v = md5($data_nrv); if(isset($_SESSION['nrv'])) { unset($_SESSION['nrv']); } $_SESSION['nrv'] = substr($nr_v, 3, 5); echo ' <hr>Bine ai venit pe ScapaDePlictiseala<br> In mai putin de un minut, iti vei face prieteni noi, vei descoperi persoane interesante din orasul tau. <br>Inainte de inregistrare va rugam sa cititi <a href=/termeni.php target="_">Termenii si conditiile noastre</a> pentru a nu avea contul sters in maxim 24 ore de la inregistrare <form action="" method="post"> <table border=0><tr><td width=40%> Utilizator:<br> <input type="text" name="nume" maxlength="42" id="nume" value="" /> <br>Parola:<br> <input type="password" name="parola" maxlength="20" id="parola" value="" /> <br>Tara:<br> <select name="tara" id="tara"> <option value="45">Anglia</option> <option value="47">Australia</option> <option value="48">Austria</option> <option value="49">Belgia</option> <option value="51">Bulgaria</option></select>
<br>Data de nastere:<br> <select name="nastere" id="nastere"> <option value="01">1</option> <option value="02">2</option> <option value="03">3</option> <option value="04">4</option> <option value="05">5</option></select> <select name="nastere" id="nastere"> <option value="01">Ianuarie</option> <option value="02">Februarie</option> <option value="03">Martie</option></select> <select name="nastere" id="nastere"> <option value="1960">1960</option> <option value="1961">1961</option> <option value="1962">1962</option></select>
<br>Sex:<br> <select name="sex" id="sex"> <option value="">Alege</option> <option value="masculin">Masculin</option> <option value="feminin">Feminin</option></select> <br>Stare:<br> <select name="stare" id="stare"> <option value="Singur(a)">Singur(a)</option> <option value="Intr-o relatie">Intr-o relatie</option></select> <br>Interes:<br> <select name="interes" id="interes"> <option value="">Alege</option> <option value="in_cautare_de_fete">In cautare de fete</option> <option value="in_cautare_de_baieti">In cautare de baieti</option></select><br /> </td><td> Id de messenger:<br> <input type="text" name="idm" maxlength="42" id="idm" value="" /> <br>Oras:<br> <select name="oras" id="oras"> <option value="">Alege Orasul</option> <option value="22">22constanta</option> <option value="33">33bucuresti</option></select> <br>Despre mine:<br> <textarea name="descriere" rows="2" cols="20" maxlength="200" id="descriere" value="" /></textarea> <br>Poza:<br> <form action="upload_poza.php" method="post" enctype="multipart/form-data"> <input type="file" name="file" id="file" /> </td><tr></table> Nume referal: (Completeaza numele pe care l-ai primit de la cel care te-a invitat pe site. Daca nu ai fost invitat de nimeni, te rugam sa nu completezi acest camp.) <br><input type="text" name="referal" maxlength="42" id="referal" value="" /> <br><input type="submit" name="submit" id="submit" value="Inregistreaza-ma" /> <br> Prin inregistrarea pe acest site sunteti de acord cu <a target="_blank" href="/termeni.php">Termenii si Conditiile</a> noastre </form>'; } @mysql_close(); ?></div></div></body></html>

Syntax error, unexpected $end in

Scris: Mar Oct 23, 2012
de MarPlo
Salut
De obicei aceasta eroare; "unexpected $end in ..." e din cauza unei greseli de sintaxa la sfarsitul unei linii de cod, cum ar fi neinchiderea unui sir cu ghilimele, sau a unei acolade, ori caracterul punct si virgula la sfarsitul respectivului cod.
In codul dat de tine, ai uitat sa inchizi sirul de text cu ghilimea simpla la aceasta linie (trebuie o ghilimea simpla inainte de caracterul punct si virgula " ; "):

Cod: Selectaţi tot

$parola = 'la fel ce am scris la host; // Parola utilizator
Alta gresala, codul PHP e inchis cu "%>", ar trebui "?>".

Daca or mai fi si alte greseli de sintaxa, le poti gasi mai usor daca folosesti un editor de text care coloreaza textul diferit pt siruri, variabile, functii, etc.; cum ar fi Notepad++.

Syntax error, unexpected $end in

Scris: Mar Oct 23, 2012
de cadou
acolo la parola e scris corect la mine pe pagina, se pare ca atunci cand am editat sa pun aici am sters o ghilimea ...
iar unde ai zis tu ca am inchis cu %> . eu nu vad sa fi inchis cu %> am inchis cu ?> ... acolo unde e %> e de la tabel cat de mare sa fie coloana .

Syntax error, unexpected $end in

Scris: Mar Oct 23, 2012
de MarPlo
Codul acela are in special gresala ca nu e aliniat /ordonat sa fie usor de citit. Apoi, o linie lunga in care sunt comentarii de cod (cu //) si variabile. Daca acestea sunt pe aceeasi linie, caracterele de comentarii va anula si variabilele.
In plus, nu se vede inchiderea codului php (cu ?>) inainte de partea ce are numai cod HTML.
Parerea e ca trebuie refacut acel script.