php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.05.2005, 18:40  
Gast
 
Beiträge: n/a
Standard kleines problem

hi leute!
ich bin noch ziemlich neu mit php, aber es gibt da eine sache, die mich total verwirrt:

wenn ich in der sql eine variable schreibe, sagt er mir, dass meine syntax falsch wäre:
($name wird über die url gesendet)
PHP-Code:
<?php
<font size="4" color="#000000" face="Arial">

    <
table border="0" cellpadding="10" cellspacing="20" width="100%">
          <
colgroup>
              <
col width="20%">
              <
col width0"80%">
          </
colgroup>
          <?
php
          
include("dbconnect.php");
          include(
"show_table.php");
              echo 
"<thead><h1>"$name"</h1></thead>";
              echo 
"<tr><td>Strukturformel</td>";
              echo 
$name, isset($name), is_string($name); // ich prüfe, ob die variable belegt ist, gibt true zurück 
              
$sql ="SELECT ID FROM bezeichnung WHERE Bezeichnung=$name";
              
$formel mysql_query($sql$link);
              
show_table($formel);
                          
              
?>
?>
##Funktion show_table:##
PHP-Code:
<?php
function show_table($result
{
  if(!
$result) {
    echo 
"

Error in SQL statement.</p>\n"
;
    return; 
  }
  
  if(!
mysql_num_rows($result)) {
    echo 
"

The query either got no results or was done unbuffered.</p>\n"
;
    return; 
  }
  
  
// set result pointer to beginning of table
  
mysql_data_seek($result0);

  
// get number of rows and columns
  
$rows mysql_num_rows($result);
  
$cols mysql_num_fields($result);
  if(
$rows>0) {
    echo 
"<table border=1>";
  
    
// show table content
    
while($row mysql_fetch_row($result)) {
      echo 
"<tr>";
      for(
$i=0$i<$cols$i++) {
        
$data $row[$i];
        if(isset(
$data)) echo "<td><font size=\"4\" color=\"#000000\" face=\"Arial\">"htmlentities($data), "</font></td>";
        else echo 
"<td>[i]NULL[/i]</td>";
      }
      echo 
"</tr>\n";
    }
    echo 
"</table>\n";
  }
}
?>
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 16.05.2005, 18:45  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
<?php
$sql 
="SELECT ID FROM bezeichnung WHERE Bezeichnung='$name'"
?>
Bitte das nächste Mal die Formatierungsmöglichkeiten des Forums nutzen. Und wenn $name über die URL kommt, dann sieht das so aus, als wenn bei dir PHP immer noch mit register_globals=on läuft. Das ist extrem schlecht.

Gruß
phpfan
 
Alt 16.05.2005, 18:47  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

1) php-code bitte in [php]-tags
2)
error-reporting
Zum testen von Scripts setzt man normalerweise am anfang des scripts (oder direkt in einer config-datei die immer Includet wird)
[php:8e39dc9632]error_reporting(E_ALL); [/php:8e39dc9632]
damit werden dann alle Fehler ausgegeben.
Mögliche Fehler die dann auftreten und wie man sie beheben kann:
Notice: Use of undefined constant ...
Notice: Undefined variable ...
3)
mysql error
man sollte in seinen Scripten immer mysql_error() verwenden, in etwa so:
[php:8e39dc9632]
$sql = "SELECT feld1,feld2 FROM table WHERE id=5";
$result = mysql_query($sql) or die(mysql_error().'
Query: '.$sql);
[/php:8e39dc9632]

[edit]
problem ist ja schon gelöst :P

mfg
robo47
robo47 ist offline  
Alt 16.05.2005, 18:50  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von robo47
1) php-code bitte in [php]-tags
2)
error-reporting
Zum testen von Scripts setzt man normalerweise am anfang des scripts (oder direkt in einer config-datei die immer Includet wird)
[php:6a824b481e]error_reporting(E_ALL); [/php:6a824b481e]
damit werden dann alle Fehler ausgegeben.
Mögliche Fehler die dann auftreten und wie man sie beheben kann:
Notice: Use of undefined constant ...
Notice: Undefined variable ...
3)
mysql error
man sollte in seinen Scripten immer mysql_error() verwenden, in etwa so:
[php:6a824b481e]
$sql = "SELECT feld1,feld2 FROM table WHERE id=5";
$result = mysql_query($sql) or die(mysql_error().'
Query: '.$sql);
[/php:6a824b481e]

[edit]
problem ist ja schon gelöst :P

mfg
robo47
aha und wie kann ich das ausschalten?
 
Alt 16.05.2005, 18:52  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

was willst du ausschalten?
robo47 ist offline  
Alt 16.05.2005, 18:53  
Gast
 
Beiträge: n/a
Standard

na das register_globales=on
oder wie löse ich sonst das prob?
 
Alt 16.05.2005, 18:53  
Gast
 
Beiträge: n/a
Standard

Wenn du Zugriff auf die php.ini hast, ändere die Zeile

register_globals=on

in

register_globals=off

Gruß
phpfan
 
Alt 16.05.2005, 18:54  
Benutzer
 
Registriert seit: 01.03.2005
Beiträge: 59
Zero.exe
Zero.exe eine Nachricht über ICQ schicken
Standard

Er will den Fehler ausschalten.
Zero.exe ist offline  
Alt 16.05.2005, 18:56  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
Zitat von sahara
na das register_globales=on
oder wie löse ich sonst das prob?
lass es, register_globals sollte imemr aus sein !!!
und wenn es so ist, will man nicht auf AN schalten!!
les den link den ich dir gepostet habe ...

mfg
robo47
robo47 ist offline  
Alt 16.05.2005, 19:08  
Gast
 
Beiträge: n/a
Standard

also bei mir ist es von standard her angeschaltet, wenn ich es ausschalte, weiß ich jetzt auch, warum es dann nicht mehr so einfach abgegriffen werden kann, aber wie komme ich denn jetzt an meine variable ran?
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ein kleines Join Problem (MySQL) susi85 Datenbanken 12 12.12.2007 20:00
Kleines problem mit meiner PHP Internetseite Clawhammer PHP Tipps 2008 2 24.10.2007 12:56
[Erledigt] Ein kleines Problem Datenbanken 2 11.01.2006 00:50
kleines Problem mit css layer Rotti HTML, Usability und Barrierefreiheit 0 08.12.2005 22:36
Sicher nur ein kleines Problem allerdings finde ich es nicht Datenbanken 8 30.10.2005 16:44
Kleines Problem Markus Biehl PHP Tipps 2005-2 7 16.10.2005 12:43
kleines Problem beim Login[Erledigt] PHP Tipps 2005-2 4 19.09.2005 18:25
Kleines Problem mit preg_replace() PHP Tipps 2005-2 3 25.07.2005 11:55
mod_rewrite kleines problem -umschreiben url PHP Tipps 2005-2 2 21.07.2005 13:16
Kleines Problem mit einem String... MortakArtos PHP Tipps 2005 2 24.01.2005 10:42
kleines Problem mit >date< PHP Tipps 2004-2 4 11.12.2004 19:42
kleines Problem PHP Tipps 2004-2 2 05.12.2004 09:44
kleines Problem mit kleinem Rätsel PHP Tipps 2004 4 30.07.2004 18:34
Kleines Problem mit Upload-Script Pimbolie1979 PHP Tipps 2004 1 28.07.2004 11:53
n kleines problem PHP Tipps 2004 18 12.07.2004 21:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:51 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.