php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 01.09.2010, 23:00  
Neuer Benutzer
 
Registriert seit: 01.08.2010
Beiträge: 25
PHP-Kenntnisse:
Anfänger
hamburger zeigte ein beschämendes Verhalten in der Vergangenheit
Standard mysql_insert

Hallo ich habe folgende Funktion die auch prima läuft soweit ich direkte Werte angebe.

PHP-Code:
$dbToAdd = array('to_id'=>$bildID'comment' =>$comment'commenter_name' =>$name);
$result insertIntoDB('kommentare'$dbToAdd); 
läuft gut.

sobald ich aber Funktionen wie NOW() übergeben möchte gehts nicht mehr:
PHP-Code:
$dbToAdd = array('to_id'=>$bildID'comment' =>$comment'commenter_name' =>$name'dateset' =>NOW()); 
meine Funktion:
PHP-Code:
function mysql_insert($table$toAdd){

   
$fields implode(array_keys($toAdd), ',');
    
$values "'".implode(array_values($toAdd), "','")."'"# better

   
$q 'INSERT INTO `'.$table.'` ('.$fields.') VALUES ('.$values.')';
   
$res mysql_query($q);

   return 
$res;

kann mir jemand helfen wie ich die NOW() richtig ins Array übergebe?
hamburger ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 01.09.2010, 23:08  
Erfahrener Benutzer
 
Registriert seit: 23.08.2010
Beiträge: 492
PHP-Kenntnisse:
Fortgeschritten
mimomamu sorgt für eine eindrucksvolle Atmosphäremimomamu sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von hamburger Beitrag anzeigen
sobald ich aber Funktionen wie NOW() übergeben möchte gehts nicht mehr
Bitte erläutern. Fehlermeldungen?

Zitat:
Zitat von hamburger Beitrag anzeigen
kann mir jemand helfen wie ich die NOW() richtig ins Array übergebe?
Was soll das bewirken? Ich kenne keine PHP-Funktion namens NOW.
__________________
Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von verwendet werden
mimomamu ist offline   Mit Zitat antworten
Alt 01.09.2010, 23:49  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.201
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist ein sehr geschätzer MenschDark Guardian ist ein sehr geschätzer MenschDark Guardian ist ein sehr geschätzer MenschDark Guardian ist ein sehr geschätzer Mensch
Standard

NOW() ist eine MySQL Funktion und da diese wohl im Query eingefügt werden soll und der Query nun einmal in PHP nichts wieter als ein String ist erscheint es naheliegen den Funktionsaufruf als String in das Array zu schreiben.
__________________
Möglicherweise kommt zu "Menschen lügen" auch "Menschen bauen Mist".
Dark Guardian ist gerade online   Mit Zitat antworten
Alt 02.09.2010, 07:09  
Neuer Benutzer
 
Registriert seit: 01.08.2010
Beiträge: 25
PHP-Kenntnisse:
Anfänger
hamburger zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Danke Dark Guardian,
Das geht aber auch nicht: (NOW() in Anführungszeichen)
PHP-Code:
$dbToAdd = array('to_id'=>$bildID'comment' =>$comment'commenter_name' =>$name'dateset' =>'NOW()'); 
hamburger ist offline   Mit Zitat antworten
Alt 02.09.2010, 07:15  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.071
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Wie sieht dein Query aus?
Code:
echo $q;
__________________
HalloPHP
Asipak ist offline   Mit Zitat antworten
Alt 02.09.2010, 08:31  
Neuer Benutzer
 
Registriert seit: 01.08.2010
Beiträge: 25
PHP-Kenntnisse:
Anfänger
hamburger zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

echo mit 'now()':
PHP-Code:
NSERT INTO `kommentare` (to_id,sub,comment,commenter_name,commenter_email,commenter_url,commenterId,notify_me,datesetVALUES ('123','241','hallo','ich bins','','','10000000','0','NOW()'
echo mit now():
Fatal error: Call to undefined function now() in /www/htdocs/w00b4eb5/autofocus.php on line 184
hamburger ist offline   Mit Zitat antworten
Alt 02.09.2010, 08:33  
Neuer Benutzer
 
Registriert seit: 01.08.2010
Beiträge: 25
PHP-Kenntnisse:
Anfänger
hamburger zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

line 184 ist

PHP-Code:
   $dbToAdd = array('to_id'=>$bildID'sub'=>$subID'comment' =>$comment'commenter_name' =>$name'commenter_email' =>$email,
              
'commenter_url' =>$url'commenterId' =>$commenterID'notify_me' =>$notify'dateset' =>NOW()); 
hamburger ist offline   Mit Zitat antworten
Alt 02.09.2010, 08:34  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.071
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Und was sagt mysql_error dazu?

Debugging:SQL - PHP.de Wiki

[edit] Wieso arbeitest du an dieser Stelle
Code:
'dateset' => 'NOW()'
überhaupt mit einer MySQL - Funktion und erzeugst das Datum/den Zeitstempel nicht gleich mit den PHP-Funktionen?
__________________
HalloPHP

Geändert von Asipak (02.09.2010 um 08:38 Uhr).
Asipak ist offline   Mit Zitat antworten
Alt 02.09.2010, 08:51  
Neuer Benutzer
 
Registriert seit: 01.08.2010
Beiträge: 25
PHP-Kenntnisse:
Anfänger
hamburger zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

es gibt keinen sql-error da in line 184 bereits hängen bleibe.
die funktion now() gibts ja nicht.
muss diese also als string ans array übergeben und dort muss der string als funktion erkannt werden.
hamburger ist offline   Mit Zitat antworten
Alt 02.09.2010, 08:52  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.071
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Nochmal: Warum nutzt du dafür keine PHP-Funktion?

Zitat:
es gibt keinen sql-error da in line 184 bereits hängen bleibe.
Dann führ das Script noch mal mit den Anführungszeichen um die Funktion aus.
__________________
HalloPHP
Asipak ist offline   Mit Zitat antworten
Antwort


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

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php mysql_query \nsert into\ array, \string als funktion\ query, php function now(), $values = \\'\.implode(array_values($toadd), \\',\'\).\\'\; # better

Alle Zeitangaben in WEZ +1. Es ist jetzt 01:43 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