Jump to content

Problema num Script!


europt

Recommended Posts

Boas pessoal, eu tenho um problema com um script que estou a traduzir e a aperfeiçoar!

Quando tento adicionar um ficheiro, dá-me o seguinte erro:

Parse error: syntax error, unexpected T_CATCH, expecting T_STRING in C:\xampp\htdocs\filecabinet\admin\add_file.php on line 5

E A Aqui vai o ficheiro add_file.php

<?php
session_start();
include ("check.php");

function catch($pvar) {
$x = stripslashes($_POST[$pvar]);
$x = str_replace("'",''',$x);
$x = str_replace("\"",'"',$x);
return $x;
}

$name = catch(name);
$cat = catch(category);
$author = catch(author);
$version = catch(version);
$short = catch(short_description);
$long = catch(long_description);
$screen = catch(screenshot);
$file = catch(download);

if (!$name) {
echo "<html><head><script>alert('You did not enter a name!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if (!$cat) {
echo "<html><head><script>alert('You did not select a category!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if (!$author) {
echo "<html><head><script>alert('You did not enter an author!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if (!$short) {
echo "<html><head><script>alert('You did not enter a short description!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if (!$long) {
echo "<html><head><script>alert('You did not enter a long description!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if (!$file) {
echo "<html><head><script>alert('You did not enter a file download URL!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if ($file == "http://") {
echo "<html><head><script>alert('You did not enter a file download URL!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}

if (!$version) { $version = "Not Available"; }
if (!$screen) { $screen = "na"; }
if ($screen == "http://") { $screen = "na"; }
$date = date("d/m/y");

include ("../db.php");
$sql_name_check = mysql_query("SELECT name FROM downloads WHERE name='$name'") or die (mysql_error());
$name_check = mysql_num_rows($sql_name_check);

if ($name_check == 1) {
echo "<html><head><script>alert('File name is already in use!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
else {
mysql_query("INSERT INTO downloads (cat, name, author, version, short_description, long_description, url_screenshot, url_download, date) VALUES('$cat', '$name', '$author', '$version', '$short', '$long', '$screen', '$file', '$date')") or die (mysql_error());
echo "<script>alert('File $name added!')</script>";
include ("addfile.php");
}
?>

Preciso de Ajuda urgentemente!

Obrigado desde Já!

Cumprimentos ;)

Link to post
Share on other sites

Tenho mais uma Duvida, ja estive a ver o codigo, mas isto vai mecher com mysql, e como eu nao pesco muito de PHP + MySQL, gostava que me dessem aqui uma ajudinha.....

eu tenho o ficheiro addfile.php, que é simplesmente um formulário:

<?php
session_start();
include ("check.php");
?>
<html>
<head>
<title>BadBlue</title>
<link rel="stylesheet" type="text/css" href="../style.css">
</head>
<body>
<b>Adicionar Categoria</b>
<br><form name="adcat" action="add_cat.php" method="post">
Nome: <input type="text" name="name" size="30" maxlength="50">
<br><br>
Descrição: <input type="text" name="descricao" size="30" maxlength="150">
<br><br>
<input type="submit" value="Adicionar Categoria">
</form>
</body>
</html>

e depois tenho o ficheiro que este form trabalha, e o que faz realmente a função de adicionar um categoria...

<?php
session_start();
include ("check.php");
include ("../db.php");

$name = $_POST['name'];
$name = stripslashes($name);
$des = $_POST['description'];
$des = stripslashes($des);

if (!$name) {
echo "<html><head><script>alert('You did not enter a category name!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
if (!$des) {
echo "<html><head><script>alert('You did not enter a category description!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}

$sql_cat_check = mysql_query("SELECT name FROM categories WHERE name='$name'") or die (mysql_error());
$cat_check = mysql_num_rows($sql_cat_check);

if ($cat_check == 1) {
echo "<html><head><script>alert('Category name is already in use!')</script></head><body onload=javascript:history.go(-1)> </body></html>";
exit();
}
else {
$sql = mysql_query("INSERT INTO categories (name, description) VALUES('$name', '$des')");
echo "<script>alert('Category $name added!')</script>";
include ("addcat.php");
}
mysql_close();
?>

A questão é: Este pequeno script apenas adiciona CATEGORIAS, e eu queria saber, se é possível fazer uma Alteração para que crie tambem SUB-CATEGORIAS!

Desde Já Obrigado!

Espero Resposta :P

Cumprimentos :confused:


Link to post
Share on other sites

Tudo o que tens deste género:

$name = $_POST['name'];

$name = stripslashes($name);

Deveria ser:

$name = mysql_real_string_escape($_POST['name']);

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to post
Share on other sites

A questão é: Este pequeno script apenas adiciona CATEGORIAS, e eu queria saber, se é possível fazer uma Alteração para que crie tambem SUB-CATEGORIAS!

É, podes por exemplo criar uma nova tabela na BD com as subcategorias e alterar o script para trabalhar com ela também. Nada como ler tutoriais e a documentação do PHP e MySQL, e se procurares neste fórum vais encontrar também recomendações de livros que te podem ajudar a "pescar mais do assunto".

hummm...eu testei isso, mas nao deu resultado...quer dizer resultado ate tem, é pena é ser um erro...

Toda a gente se engana, o que o djthyrax quis dizer é:

$name = mysql_real_escape_string($_POST['name']);

:confused:

Link to post
Share on other sites

OFFTOPIC: djthyrax, tu nao tás inscrito no somxl?

NOOXML? Tou.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.