[PHP] Parse error ?

Pagina: 1
Acties:
  • 28 views sinds 30-01-2008

  • Righteye
  • Registratie: Juli 2000
  • Laatst online: 18-03 08:27

Righteye

Mijn rechteroog dus.....

Topicstarter
Ben na veel gedoe toch maar eens begonnen met MySQL en PHP voor mijn homepage. Ben een behoorlijke n00b op dit gebiedt. Beetje html gaat nog wel. Snap alleen niet wat ik hier fout doe.
Ik krijg de volgende foutmelidng:

Parse error: parse error, expecting `','' or `';'' in /users/coolfreepage.com/wolffart/index.php on line 13

Dit is de broncode:

<html>
<body>
<?php
$db = mysql_connect("localhost", "XXXXXX", "XXXXXX");
mysql_select_db("XXXXXXX",$db);
$query = "SELECT naam, prijs FROM aquarel WHERE id=$id";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$naam = $row["naam"];
$plaatje = $row["plaatje"];

echo "\n<h1>Naam: $naam</h1>";
echo "\n[img]"$plaatje">"; ?[/img]
</body>
</html>

EINDE BRONCODE

Als dit lukt (de naam + plaatje verschijnt) dan kan ik eindelijk weer verder, hoop dat iemand het weet.

Weblog van Righteye's gezinnetje - De grote grappige plaatjes website


Verwijderd

PHP:
1
<?echo "\n[img]\"$plaatje\">";?[/img]

Wel even je quotes escapen natuurlijk.
Gebruik een editor met syntax highlighting, dan zie je zoiets meteen.

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Op zondag 07 juli 2002 19:39 schreef Cheatah het volgende:
Gebruik een editor met syntax highlighting, dan zie je zoiets meteen.
Kladblok? :o

  • Righteye
  • Registratie: Juli 2000
  • Laatst online: 18-03 08:27

Righteye

Mijn rechteroog dus.....

Topicstarter
Op zondag 07 juli 2002 19:39 schreef Cheatah het volgende:
PHP:
1
<?echo "\n[img]\"$plaatje\">";?[/img]

Wel even je quotes escapen natuurlijk.
Gebruik een editor met syntax highlighting, dan zie je zoiets meteen.
$plaatje = $row["plaatje"];

<?
echo "\n<h1>Huis: $naam</h1>";
?>
<?
echo "\n[img]"$plaatje">"; ?[/img]
</body>

Bedoel je zo ? Dit werkt namelijk ook niet.

$plaatje = $row["plaatje"];

echo "\n<h1>Huis: $naam</h1>";
<?
echo "\n[img]"$plaatje">"; ?[/img]
</body>

En dit ook niet...snap niet wat je bedoelt...

edit:

en ja...ik gebruik kladblok, downloads.com ligt er nog steeds uit en ben net vandaag pas begonnen met php/mysql.

Weblog van Righteye's gezinnetje - De grote grappige plaatjes website


  • Osiris
  • Registratie: Januari 2000
  • Niet online
PHP:
1
<?echo "\n[img]"$plaatje">";?[/img]

Dat doet het echt niet...

Nu stopt voor PHP namelijk je string na de src= en begint ie weer bij >

Om een "-char te echo-en moet je \" gebruiken...
PHP:
1
<?echo "\n[img]\"$plaatje\">";?[/img]

Zo dus :)

  • Righteye
  • Registratie: Juli 2000
  • Laatst online: 18-03 08:27

Righteye

Mijn rechteroog dus.....

Topicstarter
Bedankt voor de snelle oplossing, helaas nu weer een andere foutmelding:
Warning: Supplied argument is not a valid MySQL result resource in /users/coolfreepage.com/wolffart/index.php on line 8

Heb alle namen nagekeken en alles staat volgens mij nu goed. De broncode is nu:

<html>
<body>
<?php
$db = mysql_connect("localhost", "XXXXX", "XXXXXX");
mysql_select_db("XXXXXX",$db);
$query = "SELECT Naam, Plaatje FROM aquarel WHERE ID=$id";
$result = mysql_query($query);
$row = mysql_fetch_array($result); <<- daar zit het probleem dus toch ?
$naam = $row["Naam"];
$plaatje = $row["Plaatje"];

echo "\n<h1>Naam: $naam</h1>";
echo "\n[img]\"$plaatje\">"; ?[/img]
</body>
</html>

Wie wil nog even kijken ?

edit:

Oh...dit is de tabel btw:

# phpMyAdmin MySQL-Dump
# version 2.3.0-rc2
# http://phpwizard.net/phpMyAdmin/
# http://www.phpmyadmin.net/ (download page)
#
# Host: localhost
# Generatie Tijd: 7 Jul 2002 om 14:44
# Server versie: 3.23.49
# PHP Versie: 4.0.6
# Database : `DB_nac57972`
# --------------------------------------------------------

#
# Tabel structuur voor tabel `aquarel`
#

CREATE TABLE aquarel (
ID int(2) NOT NULL default '0',
Naam varchar(60) NOT NULL default '',
Afmeting varchar(15) NOT NULL default '',
Prijs varchar(10) NOT NULL default '',
Plaatje varchar(60) NOT NULL default '',
PRIMARY KEY (ID)
) TYPE=MyISAM;

#
# Gegevens worden uitgevoerd voor tabel `aquarel`
#

INSERT INTO aquarel VALUES (1, 'Test 1', '30 x 40 cm', '10,00', 'http://klappeonline.fateback.com/logo.gif');
INSERT INTO aquarel VALUES (2, 'Test 2', '30 x 40 cm', '20.00', 'http://klappeonline.fateback.com/logo.gif');
INSERT INTO aquarel VALUES (3, 'Test 3', '20 x 30 meter', '10,99', 'http://klappeonline.fateback.com/logo.gif');

Weblog van Righteye's gezinnetje - De grote grappige plaatjes website


  • jsiegmund
  • Registratie: Januari 2002
  • Laatst online: 02-09 09:38
Ik zou in je SQL opdracht $ID al tussen single quotes zetten. Wat er fout is aan die opdracht weet ik niet precies ik gebruik zelf altijd mysql_fetch_object om de resultaten te krijgen.

Verwijderd

Wat gebeurt er als je helemaal geen resultaten krijgt? Dan gaat je script toch proberen om er iets mee te doen.
Gebruikt dus een if of while constructie, zodat een stukje script niet wordt uitgevoerd als dat niet kan.
PHP:
1
<?if ($row = mysql_fetch_array($result)){  //handelingen met de row hier... }?>

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 15-08 20:11
Wat is $id? Waar haal je hem vandaan?
Via een post/get? Lees dan ff sticky van D2k: [topic=512413/1/400]

Je $result is leeg, waarschijnlijk door een foute query (connectie fout geeft ie meestal zelf weer).

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 31-03 16:47

CyberSnooP

^^^^ schrijft --->

Dit zijn echt heeel erg n00b vragen die je ongetwijfeld kunt beantwoorden door even goed te zoeken, maar vooruit dan maar weer:

Invalid resource wil zeggen dat de waarde in $result niet verwijst naar een plaats waar MySQL iets kan vinden. Kortom, $result is niet geldig ingesteld en dus is blijkbaar je Query mislukt. Ik zie zo snel niet waarom, maar gelukkig kan mysql je de foutmelding geven die is ontstaan bij het uitvoeren van de Query. Doe daarom bijv. dit:
PHP:
1
<?$query = "SELECT Naam, Plaatje FROM aquarel WHERE ID=$id"; $result = mysql_query($query) || die(mysql_error()); ?>

(het hoe en wat van deze constructie in PHP moet je maar ergens anders na lezen :))

|_____vakje______|


Verwijderd

Er staat dat het supplied argument. Nu dus $result niet valid(geldig) is. Waarschijnlijk staat er dus of niets in je database of is je querie fout. Volgens mij dat laatste, omdat hij bij het eerste geen fout geeft, dacht ik. Ik denk dat je gewoon de tabellen(opnieuw) moet aanmaken.

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Zet eens echo voor je $query.

En leer vooral ook debuggen, foutmeldingen lezen en de Quickstart/P&W-faq doornemen.

Daar staan dit soort dingen allemaal in uitgelegd.

Verwijderd

Uhm handig dat tegelijk posten...

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

gewoon ff een tutorialletje lezen enzo. Parse errors zijn altijd fouten die zelf op te lossen zijn

Doet iets met Cloud (MS/IBM)

Pagina: 1

Dit topic is gesloten.